Qual è il momento del primo byte e come migliorarlo sul tuo sito Web WordPress

Forse hai sentito la frase Tempo di primo byte ma in qualche modo il concetto sembra sfuggire ad alcune persone. Sia perché sembra incredibilmente orientato alla tecnologia o perché sembra un concetto astratto, non così importante per l’uso quotidiano. Nulla potrebbe essere più lontano dalla verità.


Time to First byte non è in realtà un concetto o un’idea che solo i tecnici dovrebbero comprendere. Tutti dovrebbero essere in grado di coglierne il significato e applicarlo nella pratica.

In questo articolo ti spiegherò, in poche parole: cos’è Time to First Byte, in che modo influisce sul tuo sito e perché dovresti prestare molta attenzione a questo argomento se vuoi offrire ai tuoi lettori la migliore esperienza possibile durante la navigazione del tuo sito.

Qual è il momento del primo byte?

Il tempo al primo byte (TTFB) è una misura utilizzata come indicazione della reattività di un server Web o di un’altra risorsa di rete.

TTFB misura la durata dell’utente o del client che effettua una richiesta HTTP al primo byte della pagina che viene ricevuto dal browser del client. Questo tempo è costituito dal tempo di connessione al socket, dal tempo impiegato per inviare la richiesta HTTP e dal tempo impiegato per ottenere il primo byte della pagina. Sebbene a volte frainteso come un calcolo post-DNS, il calcolo originale del TTFB nella rete include sempre la latenza della rete nella misurazione del tempo impiegato da una risorsa per iniziare il caricamento.

Questa è la spiegazione “tecnica” presa direttamente da Wikipedia. Ora traduciamolo in uno più semplice che serva tutti.

Il tempo al primo byte è il tempo impiegato da te premendo quel pulsante per caricare un sito Web nel momento in cui inizia il rendering. Se dovessi parlarne in termini di gioco, il tempo al primo byte sarebbe simile alla “latenza” o al “ritardo” che hai durante il gioco. La latenza è una rappresentazione diretta di quanta reattività percepita ha il tuo sito.

Quali fattori influenzano il tempo al primo byte?

Il tempo al primo byte può essere rappresentato da diversi fattori, ma poiché si tratta di un articolo di WordPress, ridurremo tutto a ciò che è interessato quando WordPress è in atto.

  • Tempo di risposta DNS
  • Configurazione e prestazioni del server (PHP e webserver)
  • Plugin / temi di WordPress
  • Caching HTML abilitato / disabilitato

Ognuno di questi fattori aggiunge una latenza aggiuntiva al tempo impiegato dal tuo sito per iniziare il rendering. Questo significa che tutto sommato. Non è quello alcuni di questi fattori può influire sulla latenza, tutti di questi fattori contribuiscono a una maggiore latenza! Quindi puoi immaginare che per uno scenario ideale, tutto dovrebbe essere veloce per te per ottenere un ottimo Time to First Byte e se qualcosa in quella catena sta impiegando più tempo per l’elaborazione, il tuo Time to First byte subirà.

Questo è importante perché Time to First byte influenza tutto ciò che tu o i tuoi lettori fate sul vostro sito. Ogni volta che un lettore fa clic su un collegamento, un’immagine, un post di blog o una pagina, verrà preso in considerazione Time to First Byte. Puoi vedere che un brutto momento per il primo byte significherà che il lettore avrà una situazione simile a un giocatore connesso a un server scadente. Ogni clic avrà un ritardo considerevole associato e ciò avrà un impatto sull’esperienza.

Nota: da questo punto in poi userò l’acronimo TTFB per indicare Time to First Byte solo per velocizzare un po ‘le cose.

1. Tempo di risposta DNS

La risoluzione DNS è il primo fattore nell’equazione. Assicurati sempre di utilizzare buoni server DNS e che i nodi siano sparsi in tutto il mondo per ottenere la migliore risoluzione possibile. Un buon modo per ridurre il TTFB in questo passaggio è usare un buon servizio globale come CloudFlare come implementa quel tipo di servizio Memorizzazione nella cache DNS globale. Questo metodo è estremamente utile per ridurre il TTFB memorizzando nella cache ulteriori risoluzioni.

2. Configurazione del server

Il secondo passo nella latenza TTFB è il server effettivo. Qui è dove entra in gioco il tuo hosting. Il tipo di configurazione del server Web che utilizza e le tecniche di memorizzazione nella cache lo faranno ridurre notevolmente TTFB. Ad esempio, se il tuo server implementa il vecchio interprete PHP 5.4 otterrai un TTFB molto elevato mentre l’utilizzo di una moderna configurazione di PHP 7.1 ridurrà quel tempo di un fattore di 2 o più.

Questo perché l’interprete PHP svolge un ruolo importante nel processo. Ogni volta che chiedi una pagina Web o un post di blog uncached, il server dovrà elaborare i file PHP in questione per convertirli in formato HTML nel tuo browser. Più complessi sono i file PHP, più tempo ci vorrà per pre-elaborarli e rispedirli al tuo browser.

Puoi vedere che le prestazioni del server avranno anche una parte importante sull’intero processo. Più veloce è la CPU e maggiori sono le risorse che il tuo hosting ti assegna, più velocemente elaborerà quei file e, quindi, il tuo TTFB sarà più piccolo.

Inoltre, se il tuo hosting implementa una memorizzazione nella cache di PHP, questo sarà ulteriormente ridotto alla seconda richiesta in quanto fornirà una versione cache di quel file invece di dover elaborare nuovamente il file PHP.

Ora puoi vedere che ci sono 2 tipi di attività di hosting, i servizi generali (non memorizzati) e i servizi di hosting esclusivo di WordPress che di solito implementano un meccanismo di memorizzazione nella cache per PHP, riducendo il tuo TTFB nel processo.

3. Plugin e temi WordPress

Il terzo passo nell’equazione TTFB è il tuo sito reale. Questo è il fattore più importante e ti mostrerò perché.

Di solito WordPress darà al tuo hosting diversi file PHP da elaborare e più sono complessi, più tempo ci vorrà per elaborare. WordPress è servito da plugins e quei plugin aggiunge un codice extra all’elaborazione PHP finale, quindi tenendo presente questo, puoi chiaramente vederlo più plugin hai installato, più tempo ci vorrà per il tuo hosting per elaborarli e quindi, il tuo TTFB aumenterà.

Meno è, meglio è

Come regola generale, in genere meno plug-in è meglio. Ovviamente, un plug-in con un codice scadente può essere molto peggio di 10 plug-in con codice esperto o è possibile installare due plug-in che si verificano in conflitto. In generale, tuttavia, ridurre il numero di plug-in semplifica la gestione degli aggiornamenti e aumenta la velocità del sito. Ecco un esempio di una quantità ragionevole di plugin per un’installazione.

Tempo al primo byte: meno plug-in

Il prossimo esempio potrebbe essere problematico (di nuovo – dipende in parte da ciò che hai installato).

Tempo al primo byte: più plugin

E, naturalmente, qualsiasi cosa oltre la barriera dei 30 plugin non è probabilmente buona per la tua latenza. Puoi essere sicuro che un sito Web con più di 40 plugin avrà un TTFB molto elevato anche se è ospitato su un servizio di hosting spettacolare e ti mostrerò perché.

4. Memorizzazione nella cache HTML

L’ultimo fattore è il più importante ed è legato al meccanismo di memorizzazione nella cache decidi di implementare sulla tua installazione di WordPress. Sebbene in WordPress ci siano diversi tipi di meccanismi di memorizzazione nella cache, il più efficace di tutti è Cache HTML.

Avere un buon plugin come Abilitazione cache KeyCDN avrà un impatto enorme sul tuo TTFB, ancor più dell’hosting stesso. Converte tutti quei file in HTML, quindi una volta che la cache è attiva i tuoi lettori non dovranno passare attraverso il pre-processore PHP sul tuo hosting e sarà solo il server web stesso responsabile della pubblicazione dei tuoi contenuti. Puoi persino accelerare ulteriormente il processo se decidi di utilizzare un hosting che include nginx invece di apache come server web principale, come ho spiegato in questo articolo.

Casi di studio al momento del primo byte: perché è importante

Ora lascia che ti mostri di cosa stiamo parlando. I seguenti casi di studio sono esempi reali di configurazioni di siti Web su vari server, con un utile sommario di riferimento alla fine.

Un sito Web lento su un server lento

Avere un sito lento può essere una seccatura per TTFB e se non ti interessa un buon servizio di hosting, devi essere pronto ad affrontare il risultato peggiore possibile.

Tempo al primo byte: sito lento, prestazioni del server lente

Analizziamo questo sito in dettaglio. A questo scopo userò gli strumenti Pingdom perché è uno strumento eccellente per farti vedere il TTFB. Il trucco è aprire il dettaglio sulla prima richiesta fatta al sito.

Tempo al primo byte: sito lento, risposta lenta del server

Come puoi vedere, il sito ha un TTFB di non meno di 4,2 secondi! Ciò significa che passano 4 secondi completi fino a quando non si ottiene alcuna indicazione che il sito Web sia effettivamente disponibile.

Ora moltiplica quel tempo per tutti i clic che farai sul sito e puoi vedere quanto dolore potrebbe essere per un lettore. Naturalmente, TTFB deve essere aggiunto al tempo totale impiegato dal sito per il rendering. Il risultato sarà catastrofico per le prestazioni poiché il sito richiederà quanto 7 secondi per il rendering correttamente a volte.

La combinazione di diversi fattori porta a questo. Un sito Web scarsamente ottimizzato senza meccanismo di memorizzazione nella cache, un servizio di hosting molto lento e un interprete PHP completamente obsoleto, che esegue ancora PHP 5.4. Anche quando il sito utilizza cloudflare come meccanismo di memorizzazione nella cache esterna non c’è nulla che possa essere fatto per migliorare la situazione, se il tuo sito e il tuo hosting non collaborano.

Un sito Web veloce su un server medio

Vediamo cosa succede quando inseriamo un sito molto veloce su un server medio che utilizza Apache e PHP 7.1

Tempo al primo byte: sito veloce, risposta media del server

Con un sito che ha meno di 10 plug-in senza cache, il risultato è almeno 5 volte migliore del precedente. Ora puoi vedere che TTFB è impostato su 521ms. Ciò significa che il sito impiegherà 0,5 secondi per iniziare il rendering sul tuo browser, dal momento in cui passa dal server al momento in cui raggiunge il tuo computer.

Tempo al primo byte: sito veloce, risposta media del server 2

Cosa succede quando attiviamo la cache su quel sito Web? La magia accade. Un server generalmente medio in esecuzione su Apache può dare risultati eccellenti con soli 152ms di TTFB. Puoi vedere quanto a buona memorizzazione nella cache di WordPress il meccanismo influenza i risultati.

Un sito Web molto lento su un server veloce

Ora vediamo il contrario. Cosa succede se inseriamo un sito molto lento su un server molto veloce.

Tempo al primo byte: sito lento, risposta veloce del server

Un server ottimizzato che esegue Plesk con nginx e PHP 7.1.11 impiegherà 1,29 secondi per eseguire il rendering di un sito pieno di plugin (più di 27).

Tempo al primo byte: sito lento, risposta veloce del server 2

Ma quando attiviamo la memorizzazione nella cache su WordPress attraverso l’incantevole KeyCDN Cache Enabler il risultato è sorprendente. Il sito molto lento ha un TTFB ridotto a soli 400 ms.

Un sito Web veloce su un server veloce

Ora vediamo la situazione ottimale. Un sito Web veloce in esecuzione su un server veloce.

Tempo al primo byte: sito veloce, risposta veloce del server

Lo stesso server che stava fornendo un TTFB di 1,29 secondi in un sito lento risponde in meno di 500 ms in un sito veloce senza cache.

Tempo al primo byte: sito veloce, risposta veloce del server 2

Se abilitiamo la cache, i risultati sono semplicemente sorprendenti. Un server veloce, combinato con un sito Web veloce con la memorizzazione nella cache abilitata, offre meno di 150 ms di TTFB!

Risultati benchmark

Vediamo i risultati in un unico grande grafico per gli amanti del benchmark.

Benchmark di Time to First Byte

Puoi vedere che l’hosting svolge un ruolo importante nel ridurre il tuo TTFB e migliorare la latenza e le prestazioni percepite del tuo sito, ma ciò che fai con il sito ha il maggiore impatto sulle prestazioni.

Avvolgendo

Avere una buona metrica TTFB ti garantirà che avrai un sito veloce e reattivo, ridurrà i tuoi tempi di rendering generali e fungerà da eccellente metrica per determinare le prestazioni. Di solito, maggiore è il TTFB, più lento sarà il tuo sito. Avere in mente TTFB quando si esegue il benchmark del sito è fondamentale in quanto questo tempismo può essere utilizzato anche per determinare i colli di bottiglia nell’installazione di WordPress. Puoi fare un semplice esercizio disabilitando semplicemente tutti i plugin e scambiando un tema di base e quindi misurare nuovamente TTFB. Rimarrai stupito dai risultati.

Voglio finire questo articolo dicendo che questo non è affatto “una metrica per dominarli tutti” in quanto vi sono altri fattori da considerare tra cui le prestazioni del database, la larghezza di banda disponibile e la velocità della rete. Ma poiché il TTFB è di solito influenzato anche da tutti questi fattori, è una buona indicazione di strozzature altrove.

Spero che avrai la possibilità di sperimentare il tuo TTFB. Lascia i tuoi commenti qui sotto. Ci piacerebbe conoscere i tuoi test o aiutarti con qualsiasi domanda tu possa avere.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map