Što je vrijeme za prvi bajt i kako to poboljšati na vašem WordPress web mjestu

Možda ste čuli frazu Vrijeme do prvog bajta ali nekako se čini da taj pojam bježi od nekih ljudi. Bilo da se to čini nevjerojatno tehnološki orijentirano ili zato što se čini apstraktnim konceptom, ne toliko bitnim za svakodnevnu upotrebu. Ništa nije dalje od istine.


Vrijeme do prvog bajta zapravo nije koncept ili ideja koju bi samo tehnički ljudi trebali razumjeti. Svi bi trebali biti u stanju shvatiti njegovo značenje i primijeniti ga u praksi.

U ovom ću vam članku objasniti u nekoliko riječi: što je vrijeme za prvi bajt, kako to utječe na vašu web lokaciju i zašto biste trebali obratiti veliku pozornost na ovu temu ako želite pružiti svojim čitateljima najbolje moguće iskustvo prilikom pregledavanja vaše web stranice.

Što je vrijeme za prvi bajt?

Vrijeme do prvog bajta (TTFB) je mjerenje koje se koristi kao pokazatelj reaktivnosti web poslužitelja ili drugog mrežnog resursa.

TTFB mjeri trajanje od korisnika ili klijenta koji su uložili HTTP zahtjev do prvog bajta stranice koji je primio klijentov preglednik. Ovo vrijeme sastoji se od vremena povezivanja utičnice, vremena potrebnog za slanje HTTP zahtjeva i vremena potrebnog za dobivanje prvog bajta stranice. Iako se ponekad pogrešno shvaća kao post-DNS izračun, originalni izračun TTFB-a u mreži uvijek uključuje mrežne kašnjenje u mjerenju vremena koje je potrebno da resurs počne učitavati.

To je “techie” objašnjenje preuzeto izravno Wikipedija. A sada to prevedimo na jednostavniji koji služi svima.

Vrijeme do prvog bajta vrijeme je koje vam je potrebno da pritisnete taj gumb da biste učitali web mjesto do trenutka kad je započinje prikazivanje. Ako biste o tome govorili u igračkim uvjetima, vrijeme prvog bajta bilo bi slično “latenciji” ili “zaostatku” koji imate tijekom igranja. Latencija je izravan prikaz kolike percepcijske reakcije ima vaše web mjesto.

Koji čimbenici utječu na vrijeme na prvi bajt?

Vrijeme do prvog bajta može se predstaviti s nekoliko čimbenika, ali budući da je ovo članak o WordPressu, smanjit ćemo sve na ono na što utječe kada WordPress postoji.

  • DNS vrijeme odziva
  • Konfiguracija i performanse poslužitelja (PHP i web poslužitelj)
  • WordPress dodaci / tema
  • Omogućeno / onemogućeno HTML spremanje

Svaki od tih čimbenika dodaje dodatno kašnjenje do vremena koje je potrebno da se web stranica počne prikazivati. To znači da to sve zbraja. To nije to neki od tih čimbenika može utjecati na kašnjenje, svi od tih čimbenika doprinosi većem kašnjenju! Tako da možete pogoditi da bi za idealan scenarij sve trebalo biti brzo kako biste dobili jako dobro vrijeme za prvi bajt, a ako nešto u tom lancu treba više vremena za obradu, pretrpjet će vaše posljednje vrijeme bajta Time to First.

Ovo je važno jer Vrijeme do prvog bajta utječe na sve što vi ili vaši čitatelji rade na vašoj web lokaciji. Svaki put kada čitatelj klikne na neku vezu, sliku, post na blogu ili stranicu, uzet će se u obzir vrijeme do prvog bajta. Možete vidjeti da će loše vrijeme prvog bajta značiti da će čitatelj imati situaciju sličnu igraču spojenom na loš poslužitelj. Svaki će klik imati znatno zaostajanje i to će utjecati na iskustvo.

Napomena: Od ovog trenutka naprijed koristit ću akronim TTFB da označim Vrijeme do prvog bajta samo da bih malo ubrzao stvari.

1. DNS vrijeme odziva

DNS rezolucija je prvi faktor jednadžbe. Uvijek pazite da koristite dobre DNS poslužitelje i da imaju čvorove raširene po cijeloj riječi kako biste postigli najbolju moguću rezoluciju. Dobar način za smanjenje TTFB-a u ovom je koraku upotreba dobre globalne usluge poput CloudFlare kako se ta vrsta usluge provodi Globalno DNS predmemoriranje. Ova je metoda izuzetno dobra za smanjenje TTFB-a predmemoriranjem daljnjih rezolucija.

2. Konfiguracija poslužitelja

Drugi korak u kašnjenju TTFB-a je stvarni poslužitelj. Tu se pojavljuje vaš hosting. Vrsta konfiguracije web poslužitelja koju koristi i tehnike keširanja bit će uvelike umanjiti TTFB. Na primjer, ako vaš poslužitelj implementira stari PHP 5.4 interpreter, dobit ćete vrlo visoki TTFB dok će upotreba moderne PHP 7.1 konfiguracije to vrijeme smanjiti za 2 ili više.

To je zato što tumač PHP igra važnu ulogu u tom procesu. Svaki put kada tražite stranicu web stranice ili blog blog koji je uncached, poslužitelj će to morati obradi dotične PHP datoteke kako biste ih pretvorili u HTML format natrag u vaš preglednik. Što su PHP datoteke složenije, to će im trebati vremena da ih prethodno obradite i vratite natrag u preglednik.

Možete vidjeti da će izvedba poslužitelja također uzeti važnu ulogu u cijelom procesu. Što brži CPU i više resursa koje vaš hosting izdvoji za vas, to će brže obraditi te datoteke i, samim tim, vaš TTFB će biti manji.

Također, ako vaš hosting implementira PHP predmemoriju, to će se dodatno smanjiti na drugi zahtjev jer će pružiti predmemoriranu verziju te datoteke, umjesto da je potrebno ponovno obraditi PHP datoteku.

Sada možete vidjeti dvije vrste hosting usluga, opće (bez memorije) usluge i WordPress ekskluzivne hosting usluge koje obično implementiraju predmemoriranje mehanizma za PHP, smanjuje TTFB u tom procesu.

3. Dodaci i tema za WordPress

Treći korak u TTFB jednadžbi je vaša stvarna web lokacija. Ovo je najvažniji faktor i pokazat ću vam zašto.

Obično će WordPress vašem hostingu pružiti nekoliko PHP datoteka i što su složeniji, to će trebati više vremena za obradu. WordPress poslužuje dodataka i ti dodaci dodaje dodatni kod do konačne PHP obrade, tako da to imate na umu i to možete jasno vidjeti što više dodataka ste instalirali, više vremena će trebati za vaš hosting kako bi ih obradio i stoga će se povećati TTFB.

Što je manje, to bolje

U pravilu je manje dodataka obično bolje. Naravno, jedan loše kodirani dodatak može biti puno gori od 10 stručno kodiranih dodataka ili je moguće instalirati dva dodatka za koja se dogodi da su u sukobu. No, općenito govoreći, kondenziranje broja dodataka olakšava upravljanje ažuriranjima i ubrzava web mjesto. Evo primjera razumne količine dodataka za instalaciju.

Vrijeme do prvog bajta: Manje dodataka

Ovaj bi sljedeći primjer mogao biti problematičan (opet – djelomično ovisi o tome što ste instalirali).

Vrijeme do prvog bajta: više dodataka

I naravno, ništa prije barijere od 30 dodataka vjerojatno nije dobro za vaše kašnjenje. Možete biti sigurni da će web stranica s više od 40 dodataka imati jako visok TTFB, čak i ako se on održava na spektakularnom hosting uslugu, a ja ću vam pokazati zašto.

4. HTML predmemoriranje

Posljednji faktor je najvažniji i povezan je s mehanizam keširanja odlučite implementirati na svoju WordPress instalaciju. Iako u WordPressu postoji nekoliko vrsta mehanizama za spremanje podataka, najučinkovitiji od svih je HTML predmemoriranje.

Imati dobar dodatak kao KeyCDN cache Enabler imat će ogroman utjecaj na vaš TTFB, čak i više nego sam hosting. Pretvorit će sve te datoteke u HTML, tako da nakon aktiviranja predmemorije vaši čitatelji neće trebati proći kroz PHP predprocesor na vašem hostingu i to će biti samo sam webserver odgovorna za posluživanje vašeg sadržaja. Možete još više ubrzati postupak ako se odlučite na hosting koji uključuje Nginx umjesto apachea kao glavnog web poslužitelja kao što sam objasnio u ovom članku.

Vrijeme do prve bajtne studije slučaja: zašto je važno

Sada da vam pokažem o čemu pričamo. Sljedeće studije slučaja predstavljaju primjere konfiguracija web stranica na različitim poslužiteljima s stvarnim rezimeom na kraju.

Sporo web mjesto na sporom poslužitelju

Posjedovanje spore stranice može predstavljati bol za TTFB i ako vam nije potrebna dobra usluga hostinga, morate biti spremni suočiti se sa najgorim mogućim ishodom.

Vrijeme do prvog bajta: Sporo web mjesto, sporo performanse poslužitelja

Analizirajmo ovu stranicu detaljno. U tu svrhu koristit ću Pingdom alate jer je to izvrstan alat za prikaz TTFB-a. Trik je u otvaranju detalj na prvi zahtjev učinjen na mjestu.

Vrijeme do prvog bajta: Sporo web mjesto, spor odgovor poslužitelja

Kao što možete vidjeti, stranica ima TTFB ne manje od 4,2 sekunde! To znači da prođe 4 kompletne sekunde dok ne nađete naznake da je web mjesto zapravo dostupno.

Sada pomnožite to vrijeme sa svim klikovima na web mjestu i vidjet ćete koliko boli može nanijeti čitatelju. Naravno, TTFB mora biti dodan ukupnom vremenu na kojem je web mjesto potrebno za prikazivanje. Rezultat će biti katastrofalne za izvedbu jer će stranica trajati koliko 7 sekundi za renderiranje pravilno ponekad.

Kombinacija više čimbenika dovodi do toga. Loše optimizirana web stranica bez mehanizma za keširanje, vrlo spor servis hostinga i potpuno zastarjeli prevoditelj PHP-a, koji i dalje radi PHP 5.4. Čak i kada web lokacija koristi cloudflare kao vanjski mehanizam za spremanje podataka, ne bi se moglo učiniti ništa na poboljšanju situacije, ako vaša web lokacija i vaš hosting ne surađuju.

Brza web stranica na prosječnom poslužitelju

Pogledajmo što se događa kada vrlo brzu web stranicu stavimo na prosječni poslužitelj koji koristi Apache i PHP 7.1

Vrijeme do prvog bajta: Brzo web mjesto, Prosječan odgovor poslužitelja

Ako web lokacija ima na njemu manje od 10 dodataka bez predmemorije, rezultat je barem 5 puta bolji od prethodnog. Možete vidjeti da je TTFB sada postavljen na 521ms. To znači da će web stranici trebati 0,5 sekundi da se počne prikazivati ​​na vašem pregledniku, od trenutka kada ode s poslužitelja do trenutka kada dođe do vašeg računala..

Vrijeme do prvog bajta: Brza stranica, Prosječni odgovor poslužitelja 2

Što se događa kada aktiviramo predmemoriju na toj web stranici? Magija se događa. Općenito prosječni poslužitelj koji radi na Apacheu može dati izvrsne rezultate sa samo 152ms TTFB-a. Možete vidjeti koliko dobar WordPress predmemoriranje mehanizam utječu na rezultate.

Vrlo spora web stranica na brzom poslužitelju

A sada da vidimo suprotno. Što se događa ako vrlo sporo mjesto postavimo na vrlo brz poslužitelj.

Vrijeme do prvog bajta: sporo mjesto, brzi odgovor poslužitelja

Optimiziranom poslužitelju koji pokreće Plesk s nginxom i PHP 7.1.11 trebaće 1,29 sekundi da se web mjesto ispuni dodacima (više od 27).

Vrijeme do prvog bajta: sporo mjesto, brzi odgovor poslužitelja 2

Ali kad aktiviramo Caching na WordPress-u putem lijepog KeyCDN Cache Enablera, rezultat je nevjerojatan. Na vrlo sporoj web lokaciji smanjen je TTFB na samo 400 ms.

Brza web stranica na brzom poslužitelju

Sada da vidimo optimalnu situaciju. Brza web stranica koja radi na brzom poslužitelju.

Vrijeme do prvog bajta: Brza stranica, Brzi odgovor poslužitelja

Isti poslužitelj koji je na 1,22 sekunde TTFB na sporoj web lokaciji reagirao je za manje od 500 ms na brzom web mjestu bez predmemorije.

Vrijeme do prvog bajta: Brza stranica, Brzi odgovor poslužitelja 2

Ako omogućimo predmemoriju, rezultati su jednostavno nevjerojatni. Brzi poslužitelj, u kombinaciji s brzim web-mjestom s omogućenim predmemoriranjem daje manje od 150ms TTFB-a!

Rezultati mjerenja

Pogledajmo sve rezultate u jednom velikom grafikonu za ljubitelje referentnih vrijednosti.

Vrijeme do prvih bajtova

Možete vidjeti da hosting služi važnu ulogu u smanjenju TTFB-a i poboljšanju kašnjenja i percipiranih performansi vaše web-lokacije, ali ono što učinite sa web-mjestu ima najviše utjecaja na performanse.

Završavati

Ako dobri pokazatelj TTFB jamči vam da ćete imati brzo i brzo web mjesto, smanjit će vam opće vrijeme prikazivanja i poslužit će kao izvrstan pokazatelj za određivanje izvedbe. Obično će viši TTFB biti sporiji. Imajući na umu TTFB prilikom vrednovanja web mjesta je najvažnije, jer se to vrijeme može koristiti i za utvrđivanje uskih grla na vašoj WordPress instalaciji. Možete napraviti jednostavnu vježbu jednostavnim isključivanjem svih dodataka i prebacivanjem na osnovnu temu, a zatim ponovno izmjerite TTFB. Iznenadit ćete se rezultatima.

Želim završiti ovaj članak rekavši da to nipošto nije “jedna metrika koja će svima njima vladati”, jer postoje i drugi faktori koje treba uzeti u obzir, uključujući performanse baze podataka, dostupnu propusnost i brzinu mreže. Ali budući da i na TTFB obično utječu svi ti faktori, to je dobar pokazatelj uskih grla drugdje.

Nadamo se da ćete iskoristiti priliku eksperimentirati sa svojim TTFB. Ostavite svoje komentare u nastavku. Voljeli bismo čuti o vašem vlastitom testiranju ili vam pomoći oko bilo kakvih pitanja.

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