This content is also available in English
È scontato – ma non per tutti, a quanto pare! – che la velocità di un sito sia un requisito fondamentale per l’acquisizione e il mantenimento di visitatori (leggasi anche “acquirenti”).
WP Rocket è una soluzione commerciale molto utilizzata per gestire parte dei parametri di ottimizzazione di un sito WordPress.
In questo articolo – il primo di una serie – ci concentreremo sulle funzionalità basilari del plugin, avviate alla prima attivazione. Possiamo distinguerle in automatiche (non visibili in configurazione) e predefinite (gestibili agevolmente).
Prendiamo il caso di Kinsta, da noi ampiamente utilizzato: dalla versione 3.0 di WP Rocket, la compressione GZIP e la cache di pagina vengono automaticamente disabilitate su plugin e gestite dal server.
Funzionalità quali la durata della cache possono essere ininfluenti. Altre, quali il precaricamento della cache, possono essere addirittura sconsigliate!
Nello specifico si rimanda a questo aggiornamento (del gennaio 2022).
Non escludiamo di affrontare l'argomento in uno dei prossimi articoli.
1 – Funzionalità automatiche
All’attivazione di WP Rocket, alcune funzionalità vengono avviate automaticamente, senza essere visibili in configurazione. Le più importanti sono:
- Cache di pagina,
- Configurazione scadenze della cache lato browser,
- Compressione GZIP.
La lista completa è riportata in questo articolo.
Vediamo in dettaglio le 3 menzionate.
1.1 – Cache di pagina
Banalmente, consiste nella memorizzazione del codice di una pagina.
Alla prima visualizzazione da parte di un utente qualsiasi (o in fase precaricamento, come vedremo), WordPress genera il codice HTML. Questo sarà disponibile per tutte le visualizzazioni successive, da parte di qualsiasi utente, fino alla scadenza.
E’ scontato che l’impiego di HTML statico comporti una ridotta sollecitazione sul server (sia lato PHP che MySQL) e una maggiore velocità.
La cache viene ripulita totalmente o parzialmente:
- Alla propria scadenza;
- Alla pubblicazione/aggiornamento di un contenuto (insieme a home e pagine archivio delle tassonomie cui la pagina appartiene);
- Modificando le impostazioni di WP Rocket.
1.2 – Configurazione scadenze della cache lato browser
La cache del browser è la classica memorizzazione di file nel browser dell’utente. Normalmente è sempre attiva (a meno di inibizioni) per qualsiasi contenuto statico presente in rete.
I contenuti del sito possono necessitare di aggiornamenti con cadenze differenti.
Ad esempio, il logo aziendale non verrà modificato frequentemente. Potrà essere memorizzato sul browser dell’utente, con scadenza impostata a una settimana. Se il file subisse variazioni, impiegherebbe al massimo una settimana per essere scaricato nuovamente.
Qui entra in gioco WP Rocket, che adatta i tempi di scadenza ottimizzandoli in base ai contenuti. Va detto che la configurazione su Apache, potendo usufruire della modifica di .htaccess, sarà più completa. E’ anche possibile intervenire agire manualmente per ottenere gli stessi risultati su NGINX.
Pertanto, nel caso in cui l’utente visiti varie pagine, o visiti più volte la stessa pagina, si ridurranno banda, richieste HTTP e si aumenterà la velocità.
1.3 – Compressione GZIP
GZIP è un formato di compressione che può essere applicato ai contenuti serviti in rete (pagine, fogli di stile, JavaScript), riducendo così i tempi di trasferimento.
WP Rocket abilita la compressione GZIP solo su Apache, mediante modifica di .htaccess. Per NGINX e IIS, è necessario rivolgersi direttamente al fornitore.
2 – Funzionalità predefinite
Alcune funzionalità, di base attive, possono essere gestite in configurazione. Tra queste:
- Cache mobile;
- Scadenza della cache di 10 ore;
- Precaricamento cache;
- Precaricamento dei link;
- Riduzione attività di API Heartbeat.
Vediamole in carrellata.
2.1 – Cache mobile
Semplicemente, è l’applicazione della cache sui dispositivi “mobili”, ove con tale termine WP Rocket identifica esclusivamente i telefoni.
Di norma è sempre consigliato abilitarla, a patto che il sito sia responsivo.
2.2 – Scadenza cache
La durata di 10 ore della cache di pagina è un punto di partenza.
A fronte di aggiornamenti frequenti, può essere ragionevole abbassare il tempo, agendo gradualmente.
2.3 – Precaricamento cache
Il precaricamento della cache di pagina comporta che questa venga generata autonomamente da WP Rocket, indipendentemente dalle interazioni degli utenti.
Se il precaricamento è disattivato, ogni pagina richiederà almeno una visita per poter essere inserita in cache. Pertanto, il primo utente la visualizzerà sempre più lenta.
2.4 – Precaricamento link
Il precaricamento dei link migliora il tempo di interazione percepito dall’utente che naviga nel sito.
Se l’utente clicca o scorre su un link per oltre 100ms, il contenuto HTML della relativa pagina verrà precaricato in secondo piano.
2.5 – Riduzione attività dell’API Heartbeat
L’API Heartbeat è predefinita di WordPress. Fornisce una connessione per il trasferimento d’informazioni in tempo reale tra server e browser. Ad esempio, è coinvolta in salvataggi automatici, notifiche amministratore, blocco dei post durante la modifica da parte di un utente, e molto altro.
In un intervallo nell’ordine dei secondi, l’API lancia una serie di comandi sfruttando il file admin-ajax.php per la comunicazione con l’esterno.
Benché fondamentale, può portare a un utilizzo elevato della CPU.
WP Rocket di base ne riduce l’attività, limitandone l’avvio ogni 2 minuti (Reduce activity).
3 – Due parole sulla cache utente
Si tratta di una funzionalità di base disattivata, ma che merita menzione.
Consiste nella creazione di una cache separata per ogni utente che effettui accesso al sito. L’opzione non ha effetto sui visitatori esterni.
Risulta pertanto utile con siti che integrino aree riservate.
4 – È solo l’inizio
Abbiamo affrontato solo le funzionalità base di WP Rocket, senza entrare troppo in dettaglio. Prossimamente affronteremo aspetti quali media, precaricamento, contenuti esterni, e molto altro.
Restate sintonizzati nelle prossime settimane; nuovi articoli sono in arrivo!
This content is also available in English