Ridurre i tempi di risposta del server

La sezione Opportunità del report Lighthouse riporta il tempo di risposta del server, ossia il tempo impiegato dal browser di un utente per ricevere il primo byte di contenuti della pagina dopo aver effettuato la richiesta:

Uno screenshot dei tempi di risposta di Lighthouse Server sono ridotti per il controllo

Tempi di risposta del server lenti influiscono sulle prestazioni

Questo controllo non va a buon fine quando il browser attende più di 600 ms prima che il server risponda alla richiesta del documento principale. Agli utenti non piace il tempo di caricamento delle pagine. Tempi di risposta lenti del server sono una delle possibili cause di lunghi caricamenti delle pagine.

Quando gli utenti visitano un URL nel loro browser web, il browser effettua una richiesta di rete per recuperare i contenuti. Il server riceve la richiesta e restituisce i contenuti della pagina.

È possibile che il server debba svolgere molto lavoro per restituire una pagina con tutti i contenuti desiderati dagli utenti. Ad esempio, se gli utenti stanno esaminando la loro cronologia ordini, il server deve recuperare la cronologia di ciascun utente da un database e poi inserire il contenuto nella pagina. Ottimizzare il server affinché questo avvenga il più rapidamente possibile è un modo per ridurre il tempo che gli utenti impiegano in attesa del caricamento delle pagine.

Anche quando il server non ha bisogno di molto lavoro, la latenza di rete tra il client e il server può causare tempi di risposta lenti.

Come migliorare i tempi di risposta del server

Il primo passaggio per migliorare i tempi di risposta del server consiste nell'identificare le attività concettuali fondamentali che il server deve completare per restituire i contenuti della pagina, quindi misurare la durata di ciascuna di queste attività. Una volta identificate le attività più lunghe, cerca dei modi per accelerarle.

La lentezza delle risposte del server può avere molte cause e, di conseguenza, molti modi per migliorare:

  • Ottimizza la logica dell'applicazione del server per preparare più velocemente le pagine. Se utilizzi un framework server, il framework potrebbe avere consigli su come eseguire questa operazione.
  • Ottimizza le query del server sui database o esegui la migrazione a sistemi di database più veloci.
  • Esegui l'upgrade dell'hardware del server per avere più memoria o CPU.

Utilizza una rete CDN per ridurre la latenza di rete. Questa operazione è particolarmente efficace se il documento può essere memorizzato nella cache sul nodo perimetrale della CDN.

Per ulteriori dettagli, consulta la guida Ottimizzazione TTFB.

Indicazioni specifiche per lo stack

Drupal

Le specifiche del server, i moduli e i temi contribuiscono al tempo di risposta del server. Valuta la possibilità di trovare un tema più ottimizzato, selezionando con attenzione un modulo di ottimizzazione o eseguendo l'upgrade del server. I tuoi server di hosting dovrebbero utilizzare la memorizzazione nella cache opcode PHP, i sistemi di memorizzazione nella cache come memcached o Redis per ridurre i tempi di query del database, nonché una logica dell'applicazione ottimizzata per preparare più velocemente le pagine.

Magento

Utilizza l'integrazione Varnish di Magento.

React

Se esegui il rendering lato server di componenti React, potresti usare renderToNodeStream() o renderToStaticNodeStream() per consentire al client di ricevere e idratare parti diverse del markup anziché tutto in una volta.

WordPress

Le specifiche del server, i plug-in e i temi contribuiscono al tempo di risposta del server. Valuta la possibilità di trovare un tema più ottimizzato, selezionando con attenzione un plug-in per l'ottimizzazione e/o eseguendo l'upgrade del server.

Risorse