Raygun APM Annihilate probleme de performanță

Aplicațiile web din ziua de azi sunt fiarele greu manipulate, dar, dacă nu sunteți atenți, vă pot mușca echipa de dezvoltare cu greșeli costisitoare și performanțe lente. 

În realitate, acest lucru este de așteptat. Complexitatea excesivă a aplicațiilor web de astăzi înseamnă că fiecare piesă și componentă trebuie luate în considerare. Totul, de la interogări SQL subefectuale la apeluri API web și chiar la apeluri către CDN-uri terțe pot cauza probleme pentru aplicația dvs. Aceasta înseamnă că toți cei implicați în dezvoltarea și întreținerea aplicațiilor (inclusiv dezvoltatori, testeri, SysOps etc.) trebuie să colaboreze pentru a vă asigura că aplicația dvs. se execută la performanțe maxime.

Bineînțeles, echipa dvs. are nevoie de instrumentele necesare pentru a monitoriza sănătatea aplicației, iar Raygun are exact ceea ce aveți nevoie, mai ales cu lansarea lui Raygun APM.

Raygun nu este nou în spațiul de monitorizare. De ani de zile, Raygun a furnizat instrumente de clasă mondială și ușor integrate pe care dezvoltatorii se bazează pentru a găsi și analiza erorile costisitoare ale aplicațiilor, precum și pentru a monitoriza și raporta problemele UX și de performanță. Odată cu lansarea Raygun APM, Raygun are o platformă completă și inovatoare, care oferă un instrument centralizat pentru detectarea, diagnosticarea și rezolvarea erorilor și problemelor legate de performanță, indiferent de locul în care acestea apar sau ce le determină. 

Raygun APM a lansat cu suport de primă clasă aplicațiile .NET, cu suport pentru .NET Core, precum și alte limbi și cadre în curând.

Urmărirea problemelor de performanță

Performanța lentă poate fi atribuită oricărui număr de surse, cum ar fi interogările lente către API-urile externe, suprasolicitarea API-urilor externe și trasarea lentă și execuția metodei, doar pentru a numi câteva. Încercarea de a identifica aceste probleme pe cont propriu sau cu ajutorul unor instrumente greșite poate să ușureze ușor productivitatea echipei. 

Raygun APM detectează automat și clasifică corect aceste probleme, oferindu-vă un feedback imediat și detaliat și o înțelegere a performanței aplicației.

Tabloul de bord vă oferă o imagine de ansamblu asupra performanței în timp real a aplicației dvs., furnizând informații analiști surprinzător de profunde dar vizuale cu privire la solicitările primite de aplicație și la tipurile de activități pe care le utilizează aplicația dvs. (de exemplu, apeluri API, metode și interogări). Acesta evidențiază punctele de problemă ale aplicației dvs. prin afișarea celor mai slabe părți din aplicația dvs., iar Apdex vă oferă o imagine asupra satisfacției utilizatorilor dvs. cu timpul de răspuns al aplicației dvs..

Problemele legate de piesele Raygun APM sunt generate de un set de reguli pe care le puteți personaliza și adapta la nevoile dvs. specifice. De exemplu, dacă considerați că 10 ms sunt prea lungi pentru executarea unei instrucțiuni SELECT SQL, puteți configura regulile lui Raygun APM pentru a raporta toate interogările care durează mai mult de 10 ms pentru a executa.

Raygun APM vă permite să faceți o analiză detaliată a fiecărei probleme și să furnizați informații contextuale specifice tipului de problemă care a avut loc. De exemplu, următorul exemplu este o captură de ecran a informațiilor colectate pentru o interogare SQL încetinită.

Nu numai că Raygun APM vă oferă interogarea reală, dar vă arată, de asemenea, când a fost executată încet, precum și urmele în care a apărut problema.

Raygun APM descompune, de asemenea, fiecare cerere în părțile sale disparate, oferindu-vă o înțelegere clară a performanței fiecărei metode, interogări sau alte resurse utilizate în cerere.

Fiecare piesă a unei solicitări care are legătură cu performanța aplicației dvs. este capturată, catalogată și disponibilă, completată cu valori analitice pentru ca echipa dvs. să se ocupe. Raygun APM vă oferă acul în carul de vânt al datelor - el găsește deja punctele de durere ale aplicației dvs. Toată echipa dvs. trebuie să vă repare.

Integrarea cu fluxul de lucru

Astăzi, echipele de dezvoltare software utilizează o varietate de servicii pentru dezvoltarea și implementarea aplicațiilor. Gândiți-vă la GitHub și Bitbucket pentru gestionarea și menținerea codului sursă, Jira pentru management de proiect, Slack pentru comunicare și chiar PagerDuty pentru rezolvarea incidentelor - toate acestea sunt servicii utilizate în dezvoltarea software-ului modern pentru a facilita o echipă productivă. Bineînțeles, Raygun APM se integrează perfect cu aceste și cu multe alte instrumente și servicii de lucru ale unor terțe părți.

Imaginați-vă că ați examinat o problemă pe care Raygun APM a găsit-o cu pagina dvs. de produse și că ați putut vedea codul sursă al metodei acțiunii controlerului găzduit la GitHub sau Bitbucket și creând o problemă Jira (sau legând la o problemă existentă) fără a părăsi Raygun APM. Tot ce aveți nevoie pentru a identifica și a atribui probleme membrilor echipei dvs. este la îndemână, reducând astfel dramatic timpul mediu de rezolvare a problemelor de performanță și a erorilor software în aplicațiile dvs..

Împreună cu APM, Raygun oferă și rapoarte de accidente și monitorizare reală a utilizatorilor - împreună aceste servicii cuprind Platforma Raygun. Firește, toate componentele platformei Raygun combină și împărtășesc datele într-un flux de lucru fără probleme. 

Prețuri

Dacă sunteți familiarizat cu alte soluții APM, cum ar fi New Relic, atunci sunteți conștient de costul ridicat al monitorizării performanței aplicațiilor. Furnizorii de servicii APM precum New Relic utilizează o structură de stabilire a prețurilor per server care poate face uneori un cost prohibitiv pentru a obține o imagine completă a performanței aplicațiilor.

Dar dezvoltarea web modernă este mult mai mult decât un cod care rulează pe servere; acum profităm de containere și microservicii pentru o mai bună compartimentare și izolare a diferitelor părți ale aplicațiilor noastre. Alte soluții APM abordează recipientele și microservice într-o modalitate, încă o dată, prohibitivă costurilor. Noua reședință, de exemplu, nu necesită o licență pentru fiecare container individual, însă clienții lor trebuie să achiziționeze o licență pentru serverul pe care acești contactori rulează.

Raygun, cu toate acestea, utilizează un alt model de stabilire a prețurilor, bazat pe numărul de urme pe care le procesează pentru aplicațiile dvs. Aceasta înseamnă că puteți utiliza Raygun APM pe cât mai multe servere (atât fizice cât și virtuale) de câte ori aveți nevoie pentru cât mai multe containere, microservicii și aplicații pe care doriți să le monitorizați, ceea ce face mult mai eficient din punct de vedere al costurilor pentru a obține o imagine completă a aplicațiilor dvs. "performanță.

Raygun APM este disponibil ca produs independent, dar este chiar mai rentabil să îl cumperi ca parte a platformei Raygun. Cu platforma Raygun, beneficiați de acces la raportarea la accidente, monitorizarea reală a utilizatorilor și monitorizarea performanțelor, toate lucrând împreună.

Sprijinirea .NET

Există multe platforme de dezvoltare web disponibile și, după acești ani, PHP încă mai domnește suprem. Dar .NET este platforma utilizată în mediile de afaceri, iar prin lansarea cross-platform .NET Core, popularitatea .NET crește rapid în afara sectorului de afaceri. Dar, din păcate, nu mulți furnizori APM se concentrează pe .NET, lăsând o gaură masivă pentru ca Raygun să umple - și cu siguranță îl umple.

Odată cu lansarea platformei Raygun APM, dezvoltatorii .NET pot folosi puterea unui APM de nivel mondial pentru a monitoriza performanța aplicațiilor lor. Dacă aplicația dvs. .Net rulează pe propriul dvs. hardware sau într-o instanță Azure Web App, puteți să vă bazați pe APM-ul Raygun pentru a furniza date de performanță exacte și detaliate.

În prezent, Raygun APM acceptă numai aplicații .NET (non-Core), dar suportul pentru .NET Core și alte limbi și platforme non-Microsoft este în curând.

Experienta mea

Am profitat de ocazia de a testa pe scurt Raygun APM pe un site live, non-demo pe care am avut o mână în construcție. Știam în prealabil că aplicația are probleme de performanță. A fost construit într-un termen limită, iar optimizarea nu a fost o prioritate ... până când colegilor mei și mi sa spus să o optimizăm. Rulează pe un server on-prem (on-premise).

Setarea APM Raygun a fost extrem de simplă. Iată pașii pe care i-am luat:

  • a descărcat și instalat clientul Raygun APM pe server
  • introduceți și înregistrați cheia API
  • atașat clientul la aplicația App Pool
  • a reciclat App Pool

Am început să văd datele de urmărire în tabloul de bord în decurs de un minut. Având o cunoaștere intimă a aplicației, nu am fost surprinsă să văd că Raygun APM a identificat părțile slabe ale aplicației. Cu toate acestea, am fost foarte surprins de cantitatea de detaliu furnizată. Întotdeauna am știut că anumite metode și procese au fost lente, dar Raygun APM mi-a permis să analizez detaliile și să precizez metodele exacte și apelurile API care încetinesc aplicația mea.

Am observat un impact considerabil asupra performanței aplicației, în timp ce clientul Raygun APM a fost atașat la App Pool. Cu toate acestea, această performanță a lovit nu a fost vizibilă în părțile optimizate ale aplicației

Prin urmare, Raygun APM este cu siguranță un instrument pe care veți dori să-l folosiți într-un mediu de testare înainte de al utiliza pentru a capta și analiza aplicațiile în producție. Acest lucru vă oferă posibilitatea de a repara problemele de performanță înainte ca aplicația să fie chiar implementată.

Concluzie

Raygun APM este un serviciu fantastic pe care îl puteți utiliza pentru a monitoriza performanța aplicației .NET. Acesta găsește automat problemele de performanță pentru dvs. și cu integrarea strânsă cu alte instrumente și servicii pe care le folosiți deja, dvs. și echipa dvs. veți putea repara rapid aceste probleme. Nu numai asta, dar vine la un cost mai mic decât cele mai multe servicii APM de pe piață!

Cod