TTFB (Time To First Byte) – jak podejść do optymalizacji.

TTFB co to jest?
TTFB („Time To First Byte„) to akronim w tłumaczeniu „Czas do pierwszego bajtu” – jest to czas wyrażony w milisekundach (ms), od momentu wysłania żądania przez przeglądarkę do otrzymania danych z serwera. W teorii – im dłużej trwa uzyskanie tych danych, tym więcej potrzeba czasu na wyświetlanie Twojej strony w przeglądarce – i to właśnie celu pomocy w optymalizacji powstała ta wartość. Ale sama wartość TTFB nie mówi nic w kontekście, gdzie leży problem, ponieważ sumuje całość, wszystkie 3-etapy. Ważne jest to, aby zrozumieć, że TTFB to nie to samo co prędkość witryny/serwera.

TTFB to nie prędkość witryny czy serwera.
Obliczenie TTFB w sieci zawsze uwzględnia tzw. opóźnienie sieci. Ale jest to 3-etapowy proces, a opóźnienia mogą wystąpić w dowolnym miejscu pomiędzy przeglądarką a serwerem, sumując się do całkowitej wartości TTFB ze wszystkich etapów procesu. Powoduje to fakt, iż na podstawie tylko samej wartości TTFB nie jesteśmy w stanie zlokalizować czy problemem jest struktura, konfiguracja czy sprzęt, …a może oprogramowanie. Prześledźmy te 3 etapy po krótce.
1. Żądanie do serwera.
Ten etap mogą obciążyć takie czynniki takie jak: długie wyszukiwanie DNS, jeśli serwer znajduje się geograficznie daleko od odbiorcy lub nawet – nieoptymalne reguły zapory firewall, które wydłużają czas routingu. Do obniżenia wartości może się również przyczynić przekierowanie w .htaccess do HTTPS jeśli mierzymy adres URL podając http://. Ponadto, na tym etapie odpowiednią wartość daje nam możliwość prześledzić zwykła komenda ping
, która wyświetla czas dotarcia pakietu do serwera. Warto o tym nie zapominać i z niej korzystać.
ping <nazwa domeny>
2. Przetwarzanie.
Na przetwarzanie żądania przez serwer składa się wiele możliwych czynników, które mogą wpłynąć na wydłużenie TTFB. Możliwe scenariusze to np. brak buforowania, mozolne wywołania do bazy danych, źle zoptymalizowany kod PHP np. wtyczki WordPress, a na końcu – operacje dyskowe czy wydajność serwera. Dziesiątki zmiennych.
3. Wysyłanie odpowiedzi.
Dopiero na tym etapie serwer jest gotowy odesłać „Pierwszy Bajt”. A nawet tu, duży wpływ na to ma zarówno szybkość sieci serwera, sieci pośredniej, jak i tej klienta. Jeśli np. klient ma wolny internet z hotspotu Wi-Fi, zostanie to odzwierciedlone w TTFB.

Ale Google Page Speed Insights mówi…
Sprawy nie ułatwiło polskie tłumaczenie Google Page Speed insights, które dla zbyt dużego TTFB komunikuje „Skróć czas odpowiedzi serwera” pomimo że dodaje przy tym wyraźnie iż na ten parametr składają się dziesiątki czynników. Tak było w wersji 4 GPSI API, która po Maju 2019 roku została zamieniona z wersją 5 API, gdzie w zamian są wykorzystywane współczynniki danych rzeczywistych (ang. real-world data) z Chrome User Experience Report oraz dane labolatoryjne z Lighthouse. Mimo to informacja o TTFB również się pojawia.
Źródło: https://developers.google.com/speed/docs/insights/Server
Więc co z tym TTFB?
Nie panikować. Przykładem tu może być artykuł na oficjalnym blogu Cloudflare, który już w roku 2012 starał się wyjaśnić to, co Google przesadnie skrócił. Udowodniono że żądanie z dłuższym TTFB dotarła szybciej tylko dzięki kompresji. Tak więc warto mieć na uwadze iż optymalizowanie strony pod samym kątem TTFB nie zawsze wpływa pozytywnie na wydajność całej witryny.
Przeczytaj artykuł: „Przestań się martwić o czas do pierwszego bajtu (TTFB)” EN https://blog.cloudflare.com/ttfb-time-to-first-byte-considered-meaningles/
No dobrze, ale mimo wszystko jeśli parametr TTFB jest wysoki i chcemy go zmniejszyć to warto najpierw określić przyczynę.
Co wpływa na ładowanie strony internetowej?
Czas ładowania się strony internetowej zależy od kilku istotnych czynników. Duże znaczenie ma złożoność kodu strony WWW oraz jej zawartość. Jeżeli kod HTLM, CSS czy JavaScript jest źle zoptymalizowany i zawiera powtarzające się skrypty, z pewnością wpłynie to negatywnie na szybkość ładowania i responsywność Twojej strony. Podobnie zadzieje się w przypadku, gdy obciążysz witrynę dużą ilością elementów. Mowa tu zwłaszcza o grafikach w dużych rozmiarach i plikach video. Pamiętaj, że każdy obraz, który zamieścisz na swojej stronie www, powinien być odpowiednio sformatowany i opisany alt tagiem. Co jeszcze przyczynia się do tego, że Twoja witryna ładuje się zbyt wolno?
- Brak wykorzystania CDN,
- niska przepustowość,
- duża ilość reklam i wyskakujących okienek,
- szybkość łącza internetowego,
- niedostosowany do Twoich potrzeb serwer,
- hosting.
Na szybkość ładowania się strony www może mieć także wpływ przeglądarka oraz rodzaj urządzenia, z którego korzystasz do surfowania po sieci.
Jak poprawić TTFB?
Podpowiada logika. Należy zacząć od końca. Gdyż zmiana od razu młotka nie spowoduje że szybciej wbijemy krzywy gwóźdź.
Najpierw cache – bo można.
Upewnijmy się że posiadamy wdrożony jakiś mechanizm cache. Na Hostingu WWW oraz Hostingu Elastycznym czy Hostingu pod WordPress w miejsce zwykłego Apache korzystamy z nawet 7x szybszego serwera Litespeed, co niebagatelnie przekłada się na parametry wydajności strony. Dodatkowo jeśli jeszcze nie skorzystaliście z LScache czyli najszybszej pamięci podręcznej, która jest dostępna dla każdego klienta usługi, polecamy zaznajomić się z poniższymi poradnikami, które demonstrują jak korzystać z pamięci podręcznej:
Jak korzystać z szybkości LiteSpeed lsCache dla WordPress?
Szybki sklep na PrestaShop dzięki Litespeed cache
Optymalizacja witryny – bo trzeba.
Upewnijmy się że posiadamy zoptymalizowaną witrynę WWW. Zwróćmy również uwagę na przekierowania. Do tego celu możemy wykorzystać narzędzie on-line jak GTmetrix.com. Wspomniana w poradnikach wtyczka Litespeed dla WordPress czy PrestaShop posiada wbudowane funkcje optymalizujące zasoby witryny, niemniej jednak możemy użyć też innych narzędzi, tu na przykładzie platformy WordPress polecam artykuły: Przyspiesz swoją stronę na WordPress czy WordPress Google PageSpeed 100/100? Jak to zrobić?
Optymalizacje wg. Google PageSpeed Insight, o które należy zadbać to:
- Połączenie po HTTP/2 – certyfikat
- Optymalizacja zasobów CSS i JS
- Włącz kompresję tekstu
- Wcześniej nawiąż połączenia z wymaganymi źródłami
- Załaduj wstępnie kluczowe żądania
- Wyeliminuj zasoby blokujące renderowanie
Czy hosting ma wpływ na ładowanie strony?
Jak już z pewnością zauważyłeś, jednym z elementów, które mają wpływ na prędkość ładowania Twojej witryny, jest hosting. Aby zagwarantować sobie szybkie i płynne działanie strony WWW, warto dokładnie przyjrzeć się ofertom firm hostingowych. Jeśli dostawca dysponuje serwerem o niskich zasobach i o słabej geolokalizacji, nie licz na to, że Twoja witryna będzie ładować się w ciągu kilku sekund. Zwłaszcza gdy konfiguracja serwera pozostawia wiele do życzenia, a Ty zdecydowałeś się na najtańszą usługę na rynku bez komercyjnych rozwiązań. Chcesz przyspieszyć prędkość strony? Hosting od HitMe to niezawodny sposób na błyskawiczne wczytywanie nawet najbardziej złożonych witryn i sklepów internetowych.
Jak przyspieszyć działanie strony z pomocą hostingu?
Dobry hosting sprawi, że Twoja strona internetowa będzie lepiej widoczna w wyszukiwarce Google i częściej oraz chętniej odwiedzana przez internautów. Przy obecnych możliwościach technologicznych użytkownikom coraz trudniej zaakceptować długi czas ładowania strony. Hosting naprawdę ma znaczenie. W jaki sposób taka usługa może przyspieszyć działanie Twojej witryny? Wybierz dostawcę, który zagwarantuje Ci dużą ilość pamięci RAM na serwerze i który będzie mógł pochwalić się mocnym procesorem, optymalną przepustowością sieci oraz lokalizacją serwera blisko Twojej grupy docelowej. Sprawdź, czy firma hostingowa korzysta z CDN, cache i SDD/NVMe. Nie zapomnij również o monitorowaniu wydajności swojej witryny oraz jej optymalizacji po wykryciu ewentualnych błędów. Bardzo istotne są również oferowane dla Klienta mechanizmy zabezpieczeń przed atakami czy ochrona przed złym ruchem w sieci. Ten zza pleców, może bardzo skutecznie obciążać Twój serwer i witrynę. W HitMe wykorzystujemy najnowocześniejsze technologie, które wyniosą Twoją stronę internetową na pierwsze strony wyszukiwarki Google. Wiemy, że ładowanie strony a hosting to ścisła zależność, która ma realny wpływ na sukces Twojego biznesu w sieci. Skroimy plan hostingu na miarę Twoich indywidualnych potrzeb. Mamy sprawdzone rozwiązania dla stron WWW postawionych na WordPressie, przy PrestaShop i innych CMS. Nie trać nerwów i pieniędzy na tani hosting. Zaufaj specjalistom i wybierz HitMe.
Także na samym końcu, po wykonaniu optymalizacji witryny logicznym jest zabrać się za sam serwer. Jeśli z kolei posiadamy Serwer VPS lub serwer dedykowany, warto rozważyć zakup licencji Litespeed lub wdrożyć mechanizm cache jak np. Varnish czy Redis.
Zadbaj o Hosting.
W celu poprawy TTFB arto zwrócić uwagę czy Twój hosting oferuje takie technologie jak:
- HTTP/2, HTTP/3, QUIC
- LiteSpeed i lsCache
- Obsługa Let’s Encrypt SSL
- IPS/IDS – ochrona przed atakami
W HitMe oferujemy wszystkie te technologie w usługach takich jak Hosting WWW, Elastyczny Hosting oraz Hosting pod WordPress.