Poate că ai auzit fraza Timpul la primul octet dar cumva conceptul pare să scape de unii oameni. Fie pentru că pare incredibil de orientat spre tehnologie sau pentru că pare un concept abstract, nu atât de important pentru utilizarea de zi cu zi. Nimic nu putea fi mai departe de adevăr.


Time to First byte nu este de fapt un concept sau o idee pe care numai oamenii techie ar trebui să o înțeleagă. Toată lumea ar trebui să poată înțelege sensul și să-l aplice în practică.

În acest articol vă voi explica, în câteva cuvinte: care este Time to First Byte, cum afectează acest lucru site-ul dvs. și de ce ar trebui să acordați o atenție considerabilă acestui subiect dacă doriți să oferiți cititorilor dvs. cea mai bună experiență posibilă atunci când navigați pe site-ul dvs..

Care este timpul pentru primul byte?

Time to first byte (TTFB) este o măsurare utilizată ca o indicație a receptivității unui server web sau a altei resurse de rețea.

TTFB măsoară durata de la utilizator sau client care face o solicitare HTTP până la primul octet al paginii primite de browserul clientului. Acest timp este format din timpul de conectare la socket, din timpul necesar pentru a trimite cererea HTTP și din timpul necesar pentru a obține primul octet al paginii. Deși uneori înțeles greșit ca un calcul post-DNS, calculul inițial al TTFB în rețea include întotdeauna latența rețelei în măsurarea timpului necesar pentru o resursă pentru a începe încărcarea..

Aceasta este explicația „techie” preluată direct de la Wikipedia. Să traducem asta într-unul mai simplu, care servește tuturor.

Time to First byte este timpul necesar de la dvs. apăsând butonul pentru a încărca un site web până la momentul începerii redării. Dacă ar fi să vorbești despre acest lucru în termeni de joc, Time to first byte ar fi similar cu „latency” sau „retard” pe care îl ai în timpul jocului. Latența este o reprezentare directă a capacității de reacție percepută a site-ului dvs..

Ce factori afectează timpul până la primul octet?

Timpul până la primul octet poate fi reprezentat de mai mulți factori, dar, deoarece acesta este un articol WordPress, vom reduce totul la ceea ce este afectat atunci când WordPress este în loc.

  • Timp de răspuns DNS
  • Configurația și performanța serverului (PHP și webserver)
  • Pluginuri / Tema WordPress
  • Caching HTML activat / dezactivat

Fiecare dintre acești factori adaugă o latență suplimentară la timpul necesar pentru ca site-ul dvs. să înceapă redarea. Aceasta înseamnă că toate se adaugă. Nu e asta niste dintre acești factori pot afecta latența, toate dintre acești factori contribuie la mai multă latență! Așadar, puteți ghici că pentru un scenariu ideal, totul ar trebui să fie rapid pentru a obține un timp foarte bun pentru First Byte și dacă ceva din lanțul acesta necesită mai mult timp pentru procesare, timpul tău final pentru primul octet va avea de suferit..

Acest lucru este important deoarece Time to First byte afectează tot ceea ce faceți voi sau cititorii dvs. pe site-ul dvs.. De fiecare dată când un cititor face clic pe un link, imagine, postare pe blog sau pagină, Time to First Byte va fi luat în considerare. Puteți vedea că o perioadă de timp neplăcută către First Byte va însemna că cititorul va avea o situație similară cu un jucător conectat la un server sărac. Fiecare clic va avea un decalaj considerabil asociat, ceea ce va afecta experiența.

Notă: Din acest moment, voi folosi acronimul TTFB pentru a denumi Time to First Byte doar pentru a accelera puțin lucrurile.

1. Timp de răspuns DNS

Rezoluția DNS este primul factor în ecuație. Întotdeauna asigurați-vă că utilizați servere DNS bune și că au noduri răspândite peste tot pentru a obține o rezoluție cât mai bună posibilă. Un bun mod de a reduce TTFB în acest pas este de a utiliza un serviciu global bun Cloudflare întrucât acest tip de serviciu pune în aplicare Memorie în cache DNS globală. Această metodă este extrem de bună pentru reducerea TTFB prin introducerea în cache a rezoluțiilor suplimentare.

2. Configurare server

Al doilea pas în latența TTFB este serverul real. Aici se instalează găzduirea. Tipul de configurare a serverului web pe care îl folosește și tehnicile de cache reduce mult TTFB. De exemplu, dacă serverul dvs. implementează vechiul interpret PHP 5.4, veți primi un TTFB foarte ridicat, în timp ce utilizarea unei configurații moderne PHP 7.1 va reduce acest timp cu un factor de 2 sau mai mult.

Acest lucru se datorează faptului că interpretul PHP joacă un rol important în acest proces. De fiecare dată când ceri o pagină web sau o postare pe blog nememorate în cache, serverul va trebui să prelucrați fișierele PHP în cauză pentru a le converti în format HTML înapoi în browser. Cu cât sunt mai complexe fișierele PHP, cu atât va dura mai mult timp pentru a le prelucra și a le trimite înapoi în browser.

Puteți vedea că performanța serverului va lua și o parte importantă în întregul proces. Cu cât este mai rapid procesorul și cu cât mai multe resurse vă sunt alocate de către dvs., cu atât mai rapid va prelucra acele fișiere și, prin urmare, TTFB va fi mai mic.

De asemenea, dacă găzduirea dvs. implementează o memorie în cache PHP, aceasta va fi redusă în continuare la a doua solicitare, deoarece va oferi o versiune în cache a acelui fișier, în loc să procedeze din nou fișierul PHP..

Puteți vedea acum că există 2 tipuri de afaceri de hosting, serviciile generale (neacoperite) și serviciile de hosting exclusiv WordPress care implementează de obicei o mecanism de cache pentru PHP, reducerea TTFB în acest proces.

3. Plugin-uri și teme WordPress

Al treilea pas în ecuația TTFB este site-ul dvs. real. Acesta este cel mai important factor și vă voi arăta de ce.

De obicei, WordPress va oferi găzduirii dvs. mai multe fișiere PHP pentru a fi procesate și cu cât sunt mai complexe, cu atât va dura mai mult timp pentru procesare. WordPress este servit de Plugin-uri și aceste plugin-uri adaugă cod suplimentar până la procesarea finală a PHP, astfel încât acest lucru să aibă în vedere puteți vedea clar acest lucru cu cât aveți mai multe plugin-uri instalate, cu atât va dura mai mult timp pentru ca procesarea dvs. să fie procesată și, prin urmare, TTFB dvs. va crește.

Cu cât mai puțin cu atât mai bine

De regulă, mai puține pluginuri sunt de obicei mai bune. Desigur, un plugin slab codat poate fi mult mai rău decât 10 plugin-uri codificate în mod expert sau este posibil să instalați două pluginuri care se întâmplă să intre în conflict. Dar, în general, condensarea în jos a numărului de plugin-uri facilitează gestionarea actualizărilor și menținerea vitezei site-ului. Iată un exemplu de o cantitate rezonabilă de pluginuri pentru o instalare.

Time to First Byte: Mai puține pluginuri

Acest următor exemplu poate fi problematic (din nou – depinde parțial de ceea ce ați instalat).

Time to First Byte: mai multe pluginuri

Și, bineînțeles, orice altceva trecut de bariera de 30 de pluginuri nu este foarte bine pentru latența ta. Puteți fi sigur că un site web cu peste 40 de plugin-uri va avea un TTFB puternic ridicat, chiar dacă este găzduit pe un serviciu de găzduire spectaculos și vă voi arăta de ce.

4. Cache HTML

Ultimul factor este cel mai important și este legat de mecanism de cache decideți să implementați instalarea WordPress. Deși există mai multe tipuri de mecanisme de cache în WordPress, cel mai eficient dintre toate este Cache HTML.

Având un plugin bun de genul Cablitor de cache KeyCDN va avea un impact extraordinar asupra TTFB-ului dvs., chiar mai mult decât gazduirea în sine. Acesta va converti toate aceste fișiere în HTML, astfel încât odată ce cache-ul este activ, cititorii dvs. nu vor trebui să treacă prin pre-procesorul PHP de pe hostingul dvs. și va fi numai webserverul în sine responsabil pentru servirea conținutului dvs. Puteți grăbi procesul chiar mai mult dacă decideți să utilizați un hosting care include Nginx în loc să apache ca principal server web așa cum am explicat în acest articol.

Studii de caz de timp pentru primul byte: de ce este important

Acum permiteți-mi să vă arăt despre ce vorbim. Următoarele studii de caz sunt exemple din viața reală a configurațiilor site-ului web pe diverse servere, cu un rezumat util de referință la final.

Un site web lent pe un server lent

Având un site lent poate fi o durere pentru TTFB și dacă nu vă pasă de un serviciu bun de găzduire, atunci trebuie să fiți pregătiți să faceți cel mai rău rezultat posibil..

Time to First Byte: Slow Site, Slow Performance Server

Analizăm detaliat acest site. În acest scop, voi folosi instrumentele Pingdom, deoarece este un instrument excelent pentru a vă permite să vedeți TTFB. Trucul este să deschideți detaliu la prima cerere făcută site-ului.

Time to First Byte: Site lent, Răspuns server lent

După cum puteți vedea, site-ul are un TTFB de nu mai puțin de 4,2 secunde! Aceasta înseamnă că trec 4 secunde complete până când veți obține orice indicație a faptului că site-ul web este de fapt disponibil.

Înmulțiți acum timpul cu toate clicurile pe care le veți face pe site și puteți vedea cât de multă durere ar putea fi pentru un cititor. Desigur, TTFB trebuie adăugat la timpul total pe care site-ul este redat. Rezultatul va fi catastrofal pentru performanță deoarece site-ul va dura la fel de mult 7 secunde de redare corect uneori.

Combinația mai multor factori duce la acest lucru. Un site web slab optimizat, fără un mecanism de memorie în cache, un serviciu de găzduire foarte lent și un interpret PHP complet învechit, care încă funcționează PHP 5.4. Chiar și atunci când site-ul folosește cloudflare ca mecanism de cache extern, nu se poate face nimic pentru a îmbunătăți situația, dacă site-ul dvs. și găzduirea dvs. nu cooperează.

Un site web rapid pe un server mediu

Să vedem ce se întâmplă când punem un site foarte rapid pe un server mediu care folosește Apache și PHP 7.1

Time to First Byte: Site rapid, Răspuns mediu de server

Cu un site care are mai puțin de 10 plugin-uri fără cache, rezultatul este de cel puțin 5 ori mai bun decât precedentul. Puteți vedea că TTFB este acum setat la 521ms. Asta înseamnă că site-ul va dura 0,5 secunde pentru a începe redarea pe browserul dvs., din momentul în care trece de la server până în momentul în care ajunge la computer.

Time to First Byte: Site rapid, Răspuns mediu 2 al serverului

Ce se întâmplă când activăm memoria cache de pe site-ul respectiv? Magia se întâmplă. Un server în general mediu care rulează pe Apache poate oferi rezultate excelente cu doar 152ms de TTFB. Puteți vedea cât a bun cache WordPress mecanismul afectează rezultatele.

Un site Web foarte lent pe un server rapid

Acum să vedem contrariul. Ce se întâmplă dacă punem un site foarte lent pe un server foarte rapid.

Time to First Byte: Site lent, Răspuns server rapid

Un server optimizat care rulează Plesk cu nginx și PHP 7.1.11 va dura 1,29 secunde pentru a reda un site plin cu pluginuri (mai mult de 27).

Time to First Byte: Site lent, Răspuns server 2

Însă atunci când activăm Caching pe WordPress prin minunatul Cablator KeyCDN Cache, rezultatul este uimitor. Site-ul foarte lent are TTFB redus la doar 400ms.

Un site web rapid pe un server rapid

Să vedem acum situația optimă. Un site web rapid care rulează pe un server rapid.

Time to First Byte: rapid site, răspuns rapid la server

Același server care dădea un TTFB de 1,29 secunde pe un site lent răspunde în mai puțin de 500ms pe un site rapid fără cache.

Time to First Byte: Site rapid, Răspuns server 2

Dacă activăm memoria cache, rezultatele sunt pur și simplu uimitoare. Un server rapid, combinat cu un site web rapid cu caching activat oferă mai puțin de 150ms de TTFB!

Rezultate de referință

Să vedem rezultatele într-un grafic mare pentru iubitorii de referință.

Punctele de referință pentru momentul primului octet

Puteți vedea că găzduirea are un rol important în reducerea TTFB și îmbunătățirea latenței și a performanței percepute a site-ului dvs., dar ceea ce faceți cu site-ul are cel mai mare impact asupra performanței..

Înveliți

Dacă aveți o valoare bună TTFB vă va garanta că veți avea un site rapid și receptiv, vă va reduce timpul general de redare și va servi drept o valoare excelentă pentru a determina performanța. De obicei, cu cât TTFB este mai mare, cu atât site-ul dvs. va fi mai lent. Având în vedere TTFB atunci când faceți referință la site-ul dvs. este esențial, deoarece această sincronizare poate fi folosită și pentru a determina blocaje la instalarea WordPress. Puteți face un exercițiu simplu, pur și simplu dezactivând toate pluginurile și schimbând o temă de bază și apoi măsurați din nou TTFB. Rezultatele veți fi uimiți.

Vreau să termin acest articol spunând că acesta nu este în niciun caz „o singură măsură pentru a le controla pe toate”, deoarece există și alți factori de luat în considerare, inclusiv performanța bazei de date, lățimea de bandă disponibilă și viteza rețelei. Dar, deoarece TTFB este de obicei afectat și de toți acești factori, este o bună indicație a blocajelor în altă parte.

Sperăm că veți avea ocazia să experimentați cu TTFB. Lasă comentariile de mai jos. Ne-ar plăcea să aflăm despre testarea dvs. sau să vă ajutăm cu orice întrebare.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me