PHP Performance Tuning: 12 sfaturi Simple

în fiecare aplicație web PHP, performanța contează cu adevărat. Utilizatorii se plâng de pagini de încărcare lentă, pagini inaccesibile, link-uri care nu răspund și mulți alți factori care duc la pierderea acelor utilizatori ca clienți. Pentru a satisface nevoile utilizatorilor dvs., performanța trebuie verificată și monitorizată continuu. Fiecare aplicație software are nevoie de instrumente pentru monitorizarea și măsurarea performanței sistemului. Iată 12 sfaturi simple de reglare a performanței PHP.

sfat: găsiți instantaneu erorile aplicației și problemele de performanță cu Stackify Retrace

depanarea și optimizarea codului dvs. este ușoară cu erori integrate, jurnale și informații despre performanța la nivel de cod.

încercați astăzi gratuit

PHP Performance Tuning sfaturi

blocaje

primul pas este de a identifica impedimentele în performanța aplicației dvs., în scopul de a găsi cauza principala a problemei. Identificând problema, puteți planifica și selecta cea mai bună soluție și opțiune posibilă pentru aplicația dvs. Apoi puteți implementa soluția și, ulterior, puteți măsura rezultatele. Puteți utiliza instrumente precum Prefix sau Retrace pentru a regla performanța PHP.

prefixul este folosit pentru a evidenția interogări lente, care validează comportamentul codului dvs. și multe altele. Ar trebui să recunoașteți ce instrument de optimizare vă poate ajuta în măsurarea performanței aplicației dvs. De asemenea, ar trebui să faceți o listă a nevoilor aplicației dvs. și să o comandați de la cea mai mare la cea mai mică prioritate. În acest fel puteți identifica că unele elemente nu sunt importante pentru a vă face griji.

profilare

un sfat pentru reglarea performanței PHP este profilarea. Există o mulțime de instrumente de profilare pe care trebuie să le identificați care să se potrivească nevoilor dvs. Fiecare Profiler PHP are propriile caracteristici și avantaje. Am fost de navigare pentru un profiler PHP în internet și toată lumea are propriile sale avantaje și dezavantaje în utilizarea acestuia. Stackify are Prefix care este folosit ca instrument de profilare. Are caracteristici unice care vă permit să obțineți feedback continuu cu privire la performanța codului de pe server, SQL și a altor metode utilizate în sistemul dvs. Cea mai bună și mai impresionantă caracteristică din Prefix este că vizualizează întreaga conductă de solicitare atunci când dezvoltă aplicații web.

odată ce descărcați și instalați Prefix, puteți vedea direct informații despre

  • timpul total necesar pentru a servi pagina
  • a fost o excepție prins
  • codul de stare returnat a fost 200

și alte detalii importante pe care trebuie să le monitorizați și să le cunoașteți despre aplicația dvs.

optimizarea codului

una dintre metodele de reglare a performanței PHP pentru a asigura calitatea codului dvs. este să aveți cel mai bun proces și tehnici de optimizare a codului. Codul dvs. poate fi optimizat astfel încât să utilizeze memoria, să execute mai rapid și, de asemenea, să efectueze mai puține operații de intrare și ieșire. Chiar dacă optimizarea codului este unul dintre cele mai bune sfaturi de reglare a performanței PHP, nu înseamnă că codul dvs. trebuie să fie complex sau trebuie să înlocuiți orice bibliotecă standard. Uneori, optimizarea necesită mult timp pentru a urmări și menține codul. În cel mai rău caz, aceste optimizări nu contribuie cu niciun avantaj, deoarece pierdeți mult timp optimizând porțiuni non-critice ale aplicației dvs.

majoritatea aplicațiilor folosesc de obicei mai multe dependențe, cum ar fi serviciile PaaS, ElasticSearch, Redis, queueing, bazele de date SQL & NoSQL, MongoDB și multe altele. Prefixul ajută dezvoltatorii să înțeleagă dacă codul lor utilizează corect toate dependențele. De asemenea, permite dezvoltatorului să știe cum influențează toate dependențele performanța aplicației lor.

optimizarea configurației

în orice aplicație PHP, primul lucru pe care îl faceți este să configurați configurația și alte medii aplicabile în aplicația dvs. Este posibil să puteți adăuga atât de multe funcții care vă sporesc performanța aplicației și vă optimizează codul, dar o configurație adecvată a mediului dvs. de rulare PHP ar conta, de asemenea. Optimizarea configurației vă permite, de asemenea, să optimizați performanța aplicației dvs., precum și să asigurați fiabilitatea și rentabilitatea stocării sistemului dvs. de aplicații. Modificarea oricăror setări ale aplicației dvs. poate determina oprirea funcționării unor aplicații PHP. Este necesar să înțelegeți ideea de a modifica anumite setări, dar rețineți întotdeauna că atunci când dezactivați ceva, trebuie să urmăriți modificările cu un test în mediul dvs.

calculul distribuit

calculul distribuit este practicat pentru creșterea potențialului de execuție paralelă. Această tehnică poate crește sarcina asupra resurselor partajate cel mai probabil în sistemele de baze de date. Majoritatea aplicațiilor web au probleme și probleme atunci când vine vorba de latență și distribuția lățimii de bandă, dar calculul distribuit poate ajuta la minimizarea latenței și la evitarea blocajelor. În acest fel, calculul distribuit poate fi extrem de benefic pentru sistemul dvs. din cache-urile distribuite. Sfaturile de cache vor fi următorul subiect de mai jos.

strategie de cache

o strategie bună de cache ar putea reduce numărul de operațiuni de baze de date și compilarea codului. Este adesea înțelept să folosiți Memcache pentru scăderea încărcării bazei de date, cache-ul PHP alternativ(APC) pentru cache-ul opcode și optimizarea codului. Există o mulțime de opțiuni atunci când vorbim despre cache în PHP opcode. Acestea includ APC (care este gratuit!), eaccelerator (gratuit), XCache (gratuit) și platforma Zend. Stackify folosește mai întâi memoria Cache gestionată Windows Azure, dar au fost primite câteva reclamații. Deci, Stackify a decis să încerce Redis, care este acum susținut de Azure. Redis este mult mai recomandat decât Cache-ul gestionat Windows Azure. Sfatul meu cel mai bun este de a evalua în mod corespunzător fiecare strategie cache pentru a vedea care va suita cel mai bine nevoile dvs. și oferă cele mai bune rezultate.

Load balancing

într-o aplicație web, load balancing nu are prea multe de-a face cu aplicația, dar va avea un impact mai mare asupra găzduirii și Infrastructurii. În PHP, echilibrarea încărcării este configurată în pluginuri folosind diverse tehnici, cum ar fi random, round-robin și filtrul utilizatorului. De asemenea, puteți face o anumită prioritizare atunci când vine vorba de atribuirea serverului; în acest fel, o anumită prioritizare poate fi utilă în medii eterogene. Singurul lucru pe care ar trebui să păstreze întotdeauna în minte este că obiectele sesiune ar trebui să fie evitate, deoarece este stocat în memoria mașinii locale. În acest fel, sincronizarea datelor dvs. poate fi înșelătoare în timpul copierii de rezervă sau în timpul procesării efective a datelor.

în afară de evitarea obiectelor de sesiune, nu ar trebui să stocați fișiere precum imagini pe server. Ar fi mai bine să le plasăm în nor. În cele din urmă, dacă aveți servere care au aceeași configurație, rețineți întotdeauna că unele servere sunt mai bune decât altele în configurația hardware.

în cele mai multe cazuri, problema majoră cu echilibrarea sarcinii este atunci când se ocupă cu baza de date și de recuperare de rezervă. În Stackify, echilibrarea încărcării nu este o problemă, deoarece optimizează norul, Azure să fie specific. Cloud-ul oferă un mediu de recuperare în caz de dezastru, care este configurat, gata și scalat corespunzător atunci când este necesar.

evitați partea client

în fiecare aplicație web, când aveți atât de multe redirecționări ale paginilor dvs., aceasta poate reduce semnificativ viteza paginii. Este sugerat să verificați și să eliminați sau să micșorați în mod constant redirecționarea paginilor dvs. Pe de altă parte, redirecționarea utilizatorilor către o versiune SSL a paginii dvs. nu va funcționa deloc.

securitate (HTTP/2 peste SSL)

Hypertext Transfer Protocol este un protocol de aplicație care funcționează pe stratul TCP/IP. HTTP este responsabil pentru stabilirea unei conexiuni între server și client. De asemenea, este responsabil pentru procesarea solicitării utilizatorilor într-o pagină web sau în browser. Secure Socket Layer (SSL), pe de altă parte, este versiunea securizată a HTTP. Majoritatea comunicărilor dintre serverul web și client sunt criptate prin SSL.

în tehnologia de astăzi, majoritatea browserului nostru acceptă deja HTTP/2. Deși browserele acceptă HTTP / 2, Acesta are de fapt limitări pe partea serverului.

SQL

o bază de date este unul dintre elementele fundamentale într-o aplicație web. În baza de date SQL, trebuie să înțelegeți întotdeauna cum funcționează corect resursele fundamentale. SQL Server are propriile vizualizări de gestionare dinamică (DMV) care sunt încorporate în acesta. Majoritatea DVM-urilor furnizează date despre statisticile interogărilor, executarea planurilor și multe altele. Lucrul bun despre DVM-uri este că este întotdeauna disponibil pentru a furniza statistici de bază, dar nu poate vizualiza interogările care sunt apelate în timp.

instrumentele de gestionare a performanței aplicațiilor (APM) au capacitatea de a urmări interogările SQL. Retrace oferă interogări de urmărire SQL pe mai mulți furnizori de baze de date, inclusiv SQL Server. Retrace vă spune, de asemenea, de câte ori a fost executată o interogare și ce tranzacții o numesc. Cel mai relevant avantaj al utilizării Retrace este că are rapoarte detaliate între aplicații, pe aplicație și interogare. Poate afișa tranzacții detaliate cu privire la modul în care sunt utilizate interogările în aplicația dvs. Aceasta este cea mai importantă informație atunci când vine vorba de reglarea performanței PHP pentru SQL.

Content delivery network (CDN)

Content delivery network (CDN) este una dintre cele mai eficiente și eficiente modalități de a accelera livrarea de site-uri web cu trafic ridicat și site-uri web care au o acoperire globală. Multe companii folosesc deja CDN atunci când manipulează site-uri web la scară largă pentru a crește acoperirea geografică. Această tehnică poate reduce latența, reduce consumul de lățime de bandă și poate securiza aplicațiile, în timp ce poate bloca și spammerii și alte scrappers de date care vă pot ataca sistemul.

manipularea erorilor

manipularea erorilor este una dintre cele mai importante părți ale oricărei dezvoltări de aplicații. PHP oferă diferite tehnici și strategii pentru a gestiona Erorile. Acestea vă permit să stabiliți propriile reguli de gestionare a erorilor și să modificați modul în care erorile pot fi înregistrate. Acest lucru vă permite să dezvoltați și să îmbunătățiți raportarea erorilor care se potrivesc cel mai bine nevoilor dvs.

depanarea este o durere de cap în timpul și după dezvoltare, iar Stackify a proiectat o soluție la problemă. Cea mai puternică caracteristică a Retrace este profilarea codului, care poate urmări chiar și erorile, chiar dacă nu vă conectați. Acesta găsește erori ascunse în codul dvs. și vă oferă rapid notificări prin e-mail și SMS înainte ca toți clienții dvs. să fie afectați. Monitorizarea erorilor în Retrace nu este limitată doar în timpul dezvoltării, ci și în mediul dvs. de producție și va actualiza automat noi erori și jurnale.

rezumat

există multe instrumente de monitorizare a performanței disponibile pe piață. Alege cel mai bun pentru a se potrivi nevoilor dumneavoastră în cererea dumneavoastră.

Stackify oferă multe pachete pe care fiecare dezvoltator, administrator de sisteme sau chiar administrator de baze de date le-ar găsi întotdeauna utile. Folosind produsele noastre Stackify, puteți monitoriza, înregistra, depana cu ușurință datele și multe alte detalii care vor găsi cauza principală a problemelor aplicațiilor web și veți deveni mai productivi. Puteți încerca să verificați acum procesul nostru gratuit.

mai multe informații

aceste articole oferă informații suplimentare despre reglarea performanței PHP care ar putea fi utile pentru aplicațiile PHP.

  • 18 instrumente PHP pentru dezvoltatori de toate nivelurile
  • de ce optimizarea prematură este rădăcina tuturor relelor
  • optimizarea performanței Web: Top 3 Sfaturi de performanță pentru Server și Client
  • fundamentele testării performanței aplicațiilor Web
  • compararea a 18 APM & instrumente de monitorizare a aplicațiilor
  • despre autor
  • ultimele postări

despre Juliet Mendez

Juliet Mendez este profesor la Departamentul de informatică și științe ale informației și doctorand specializat în Tehnologia Informației. Ea are o experiență în CCNA, programări de calculator, cum ar fi PHP, JAVA, dezvoltare mobilă și management de proiect.

  • Afișați toate erorile PHP :Basic & utilizare avansată-27 martie 2020
  • ghid de optimizare a performanței PHP-Octombrie 9, 2018
  • 5 instrumente de testare a performanței PHP pe care trebuie să le cunoașteți-26 septembrie 2018
  • Laravel Tutorial elocvent cu exemple – 24 septembrie 2018
  • Obțineți detaliat PHP Trater-August 20, 2018

Leave a Reply

Adresa ta de email nu va fi publicată.