L’Importanza della Cache e Come Utilizzarla con WordPress

Quando si tratta di ottimizzare o velocizzare il proprio sito web non si può ignorare il ruolo della cache, specialmente se si tratta di un sito WordPress basato su temi piuttosto pesanti. Nonostante si tratti di uno degli elementi più importanti del proprio sito, i sistemi di cache vengono spesso utilizzati in maniera superficiale e a volte addirittura saltati completamente.

 Detto questo, che cos’è la cache e perché è così importante per il proprio sito WordPress? Forse hai già sentito dire che ti permette di velocizzare il tuo sito web, ma ci sono altre implementazioni per la cache WordPress? Quali metodi devono essere utilizzati per far sì che la cache permetta al tuo sito WordPress di diventare più competitivo sul mercato?

 Continua a leggere per scoprire questo e molto altro sulla cache WordPress.

Che Cos’è la Cache e Come Viene Utilizzata su WordPress?

Innanzitutto, dobbiamo avere un’idea generale di cosa possa essere effettuato tramite cache e a che cosa ci si riferisca quando si parla di caching in generale, tralasciando WordPress per un momento. In parole semplici, il caching si riferisce ad un processo di ottimizzazione del proprio sito web che “catturi” lo stato dello stesso in un determinato momento, rendendo alcuni file più “statici” e quindi più semplici da gestire dal lato server.

 Il caching permette al server che ospita il proprio sito di offrire agli utenti una versione precaricata della maggior parte degli elementi presenti su pagine e articoli. Gli elementi precaricati sono generalmente mostrati all’utente molto più velocemente dato che il server sa già cosa mostrare in anticipo. Questo porta non solo ad un miglioramento delle performance, ma anche ad un sistema di salvataggio che permetta di osservare i cambiamenti del proprio sito nel tempo (se il server viene configurato per effettuare questo tipo di lavoro).

 Per quanto riguarda WordPress, mostrare o richiedere una pagina (che sia un articolo o una landing page) da parte del server significa inviare e ricevere svariate “queries” che ritornino dei valori presenti sul database (banca dati), ovvero vengono formulate delle richieste di dati o informazioni specifici che verranno poi mostrati sulla pagina o usati per l’elaborazione della stessa. Il motivo per cui il caching è un sistema così diffuso si basa sul concetto che, nel momento in cui una pagina venga pubblicata, questa non abbia poi bisogno di essere modificata per molto tempo, permettendoti di mostrarla già precaricata agli utenti che navigano e che trovano il sito su motori di ricerca quali Google.

 La cache—sia su WordPress che non—crea copie statiche dei propri articoli e delle proprie pagine, offrendo agli utenti un’esperienza super veloce. In questo modo, le queries fra database e browser possono essere evitate in parte, permettendo al server ospitante di inviare ogni dato nel minor tempo possibile. È un elemento imprescindibile di ogni sito.

Le Differenze fra Client-Side e Server-Side Rendering

I sistemi di caching più tradizionali aiutano ad ottimizzare siti che facciano uso di client-side rendering (interpretazione dei file da mostrare su browser), una tecnica che—a differenza del server-side rendering—viene gestita completamente (o in parte) dal browser, ovvero l’applicazione che gli utenti usano per navigare su internet (es. Google Chrome, Firefox).

Essendo il client-side rendering basato su tecnologie più tradizionali, i browser interpretano i file in maniera più “scalare,” seguendo una struttura a cascata che può richiedere tanto tempo, soprattutto per le pagine più pesanti. Questo succede perché ogni tecnologia si basa spesso su una tecnologia sottostante. Basti pensare ai framework Bootstrap per CSS.

Nel caso del client-side rendering (CSR), l’ottimizzazione della cache diventa essenziale proprio per queste proprietà scalari dei documenti da interpretare e mostrare agli utenti. Tuttavia, c’è anche un altro modo di gestire questo processo: il server-side rendering (SSR), ovvero l’interpretazione di ogni file tramite framework moderni quali React.js e Node.js.

L’SSR è una tecnica di rendering relativamente nuova, adatta soprattutto ad applicazioni e siti con molte parti dinamiche e/o interattive. Senza entrare troppo in dettagli tecnici, si tratta di una metodologia che permette di “saltare” alcuni passi del più tradizionale CSR (dato che le richieste vengono minimizzate) e gestire il contenuto direttamente dal proprio database.

Questo non solo porta a benefici dal punto di vista della performance, ma anche dal punto di vista della distribuzione del proprio contenuto. Invece che chiedere ogni volta di ottenere gli stessi dati come spesso succede nel CSR, l’SSR permette di pre-caricare il contenuto sulla cache alla prima richiesta (che sarà un po’ più lunga) e da lì in poi offrire il massimo della velocità. È proprio per questo che si adatta soprattutto ad applicazioni e siti dinamici.

Noi di MooCloud ci stiamo impegnando per implementare tecnologie che offrano il meglio di entrambi i mondi grazie a Google PageSpeed Module; una cache a livello server che implica un’ottimizzazione client-side ancor migliore dei tipici plugin WordPress (che elencheremo fra poco), fatta eccezione per WP Rocket, che offre un ottimizazione di pari livello.

I plugin di cache WordPress lavorano direttamente su PHP (linguaggio di scripting lato server), mentre implementazioni come Google PageSpeed Module aiutano web server quali Nginx (usato su tutti i server MooCloud) ad accelerare i processi di caching. Le migliorie si basano sempre su CSR e sono comparabili ai plugin WordPress (eccetto in performance).

I Benefici del Caching Ottimizzato per WordPress

Ci sono svariati motivi per cui dovresti configurare la cache WordPress in maniera appropriata e ottimizzare i risultati del client-side rendering, dato che:

  • Velocizza notevolmente il tuo sito web WordPress e carica più velocemente i file statici quando messa a confronto con queries dinamiche che richiedono più passi per ottenere i dati necessari dal database e offrirli all’utente tramite il proprio browser.
  • Aiuta a ridurre il carico server per gli hosting provider come MooCloud, garantendo un’esperienza back-end più veloce (ancor più veloce tramite SSR). Aiuta inoltre a ridurre l’utilizzo della RAM sul server e diminuire le operazioni di entrata/uscita.
  • Permette ai siti web con CSR di ottenere una “spinta” su motori di ricerca quali Google, Bing, Yahoo, ecc. Questo dipende ovviamente da svariati altri parametri quali la qualità del proprio contenuto e le impostazioni SEO. Supponendo che tutte le altre impostazioni siano stabili, un sito web che si carica più velocemente otterrà un miglior PageRank rispetto ad un sito web più lento. Google ha confermato da tempo che PageSpeed (la velocità del proprio sito web) sia un fattore molto importante da prendere in considerazione.
  • In generale, permette di offrire un’esperienza migliore all’utente. Un sito più veloce aiuta gli utenti a navigare le pagine in maniera semplice e intuitiva. Avere un sito che faccia un buon utilizzo della cache permette al webmaster di risparmiare qualcosa sulla ,larghezza di banda. Questo perché le pagine statiche hanno una dimensione minore rispetto a quelle dinamiche. Per far sì che tutto ciò venga integrato con successo bisogna stare attenti che la propria soluzione di caching faccia un uso appropriato di tecnologie quali la minificazione di file HTML, CSS e JavaScript e non solo memorizzare le pagine.

Troppe nozioni? Passiamo ai fatti.

Ci sono tantissimi plugin su WordPress che ti permettono di configurare un sistema di caching in maniera più o meno diretta per CSR. Alcuni di questi sono gratis, mentre altri sono a pagamento. Vale la pena notare che i plugin di cache WordPress a pagamento sono molto semplici da configurare (specialmente WP Rocket) e garantiscono generalmente prestazioni eccellenti. Diamo uno sguardo ai principali plugin per cache WordPress.

Una cache efficente e inteligente significa un WordPress più veloce e reattivo!

I Plugin di Cache WordPress Più Conosciuti

Prima di avventurarci nel mondo dei plugin WordPress, ci teniamo a ricordare che tutti questi strumenti fanno parte di una strategia completa per quanto riguarda il client-side rendering o CSR. Dal punto di vista del server-side rendering, la maggior parte di questi plugin non aiutano a raggiungere particolari risultati. Solamente Cache Enabler aiuta ad attivare e velocizzare il processo stabilito tramite SSR, ma si tratta di un’ottimizzazione superficiale.

Detto questo, è importante sapere quali plugin si possano utilizzare dal punto di vista CSR nel caso si debba comunque lavorare con questa metodologia. Come abbiamo già accennato, MooCloud si sta spostando completamento verso il lato server dal punto di vista del rendering dopo aver comprovato che si tratti di una metodologia più performante. Senza indugiare oltre però, passiamo ai plugin di ottimizzazione cache per CSR più importanti.

WP Super Cache

WP Super Cache è un plugin WordPress gratuito installato da milioni di utenti WordPress e creato dagli sviluppatori di WordPress stesso, Automattic. Questo plugin di caching genera file HTML statici per il tuo sito WordPress. Facendo questo, il tuo sito web viene quasi immediatamente velocizzato rispetto ad un sito che non abbia un sistema di caching.

WP Super Cache è un plugin molto semplice da usare che offre una gamma di personalizzazione media. Puoi utilizzarlo senza problemi anche con un Content Delivery Network (anche chiamato CDN). WP Super Cache è probabilmente il plugin di cache WordPress più popolare in assoluto data la facilità d’uso ma soprattutto gli aggiornamenti costanti e affidabili della stessa azienda che controlla WordPress stesso.

W3 Total Cache

W3 Total Cache è il secondo plugin più popolare per cache WordPress, con più di un milione di attivazioni su svariati siti. A differenza di altri plugin di cache, W3 Total Cache effettua un sacco di operazioni oltre al semplice caching delle proprie pagine.

Questo plugin ti permette di “minificare” (eliminare le parti “inutili” di file statici e dinamici quali CSS e JavaScript) svariati file e di comprimere i tuoi script, portando ad un’ulteriore accelerazione del sito web. Come ci si può aspettare, W3 Total Cache è piuttosto complicato e richiede una curva di apprendimento non indifferente.

Se sei un novizio di WordPress e non ti va di passare troppo tempo a spremerti le meningi, forse non si tratta del plugin più adatto alle tue esigenze. Qua sotto vedremo un plugin molto semplice da utilizzare che ti aiuterà a partire senza problemi fin da subito.

Cache Enabler

Cache Enabler è un plugin meno conosciuto che però offre un’interfaccia molto semplice da usare. In poche parole, questo plugin fa esattamente quello che fanno quasi tutti gli altri plugin di cache WordPress senza che tu debba però toccare alcuna impostazione.

La semplicità d’uso è la sua caratteristica più riconoscibile. Infatti, il plugin non richiede alcuna configurazione. Una volta installato è già tutto fatto. Può sembrare troppo bello, ma se hai bisogno di un servizio che faccia quello che deve fare in maniera semplice e relativamente efficace, questo è quello che più si avvicina ad uno scenario da sogno.

Se invece sei abituato a plugin che offrano un controllo più preciso delle svariate impostazioni sul caching, Cache Enabler non ti servirà a molto. È da notare infatti che Cache Enabler—nonostante la facilità d’uso—non è conosciuto tanto quanto altri plugin più famosi che dominano il mercato WordPress. Detto questo, non è da meno e vale la pena provarlo.

WP Fastest Cache

WP Fastest Cache genera file HTML statici per le tue pagine e per i tuoi articoli, rendendo il tuo contenuto più veloce, proprio come tutti gli altri plugin. Inoltre, questo plugin ti permette anche di ottimizzare la performance del tuo sito con svariate impostazioni quali la minificazione di HTML, CSS e JS o la cosiddetta compressione GZip che può essere usata per ridurre la dimensione di alcuni file inviati dal server ospitante all’utente.

La versione di base del plugin è completamente ma—come tanti altri plugin—WP Fastest Cache offre anche una versione premium che si avvale di svariate funzionalità più avanzate quali l’integrazione con servizi CDN e l’utilizzo di altre tecniche per un’esperienza ottimale.

WP Rocket

Penultimo sulla nostra lista è WP Rocket, plugin premium che può essere scaricato solamente dal sito ufficiale dello sviluppatore. Questo perché WP Rocket è una soluzione che non viene offerta in alcun modo gratuitamente—si può soltanto comprare…

 Ti starai chiedendo perché spendere soldi se esistono già una miriade di plugin che offrono le stesse funzionalità gratuitamente. Il motivo è molto semplice: è stato dimostrato più e più volte che WP Rocket offra le migliori prestazioni sul mercato WordPress. Punto.

 WP Rocket non solo è estremamente semplice da configurare, ma ti permette anche di selezionare qualsiasi funzionalità di cui tu abbia bisogno con un semplice click sulle caselle offerte. Si tratta probabilmente del plugin per cache WordPress più intuitivo e performante.

Comet Cache

Un’ultima opzione è quella di Comet Cache—il plugin cache WordPress che genera file statici HTML offrendo servizi più approfonditi quali compressione GZip e caching dal lato server. Comet Cache è un buon plugin che gode di una reputazione di media gamma sul marketplace WordPress. Se ti interessa, è sicuramente una buona opzione.

Comet Cache offre sia una versione basica che una versione premium, permettendoti di fare veramente tutto ciò che tu voglia effettuare su WordPress: CDN, codice PHP personalizzato, configurazione di URL canonici, ecc. L’interfaccia è leggermente confusionaria e non così “pulita” come altri plugin in questa lista. Ti servirà un po’ di tempo prima di abituartici.

Vale la Pena Configurare la Cache su WordPress?

Usare un sistema di caching su WordPress altro non significa (nel nostro caso) che effettuare ottimizzazioni dal punto di vista della performance per quanto riguarda il server che ospita il tuo sito web. Tuttavia, effettuare queste implementazioni per conto proprio è molto difficoltoso e richiede spesso l’aiuto di un esperto di hosting come MooCloud. Grazie ai plugin per cache WordPress, ci pensa la tecnologia a fare tutto in maniera autonoma.

Utilizzare una cache performante quale Redis dal lato server aiuta a garantire che i risultati siano di alta qualità. È importante che il tuo sito si carichi in fretta, altrimenti rischi di perdere visitatori. Se vale la pena configurare un sistema di cache WordPress? Assolutamente sì. Tuttavia, noi di MooCloud ci stiamo impegnando per innovare in questo campo.

Grazie a Google PageSpeed Module abbiamo riscontrato dei risultati non solo più performanti, ma più efficienti e disponibili nell’immediato—sia per il webmaster che per noi stessi. Questo mantenendo la stessa linea dei tipici plugin WordPress che però non concedevano velocità ancora più “spinte,” cosa che succede se implementata dal lato server.

Proprio per questo abbiamo deciso di passare all’implementazione  di Google PageSpeed Module su tutti i nostri pacchetti di hosting, rendendo superfluo l’utilizzo della maggior parte dei plugin sopra elencati (a parte Cache Enabler). Questo perché crediamo davvero che le tecnologie SSR (in concomitanza con CSR) siano il futuro del web. Se vuoi saperne di più, visita la pagina sulle tecnologie utilizzate da MooCloud.