Migliorare le performance di un sito con Google PageSpeed Module e CDN
Le prestazioni di un sito web sono da sempre un fattore imprescindibile da valutare in qualsiasi progetto web.
Infatti, sebbene ormai, secondo le dichiarazioni di Matt Cutts, sia ufficiale che la velocità di caricamento di un sito non sia fattore di ranking agli occhi di Google - dunque non influisca direttamente in termini di posizionamento - è altrettanto vero che si tratta di una caratteristica che gioca una importanza fondamentale quando si parla di user-experience, quindi accessibilità e navigabilità da parte degli utenti.
E possiamo facilmente immaginare come aumentare le page-views o generare conversioni siano aspetti strettamente legati, oltre alla qualità dei contenuti, alle performance del sito e anche alla facilità e piacevolezza della navigazione, fattori fondamentali per una CRO - Conversion Rate Optimization - finalizzata ad aumentare la percentuale di utenti che si convertono in clienti.
Perché aumentare la Velocità di caricamento delle tue pagine?
Diversi test effettuati hanno dimostrato che, nonostante non ci sia stato un miglioramento del posizionamento in SERP, tuttavia i siti con Page Speed ottimizzata godono di traffico più elevato ed analizzando il comportamento degli utenti, si riscontra un aumento degli utenti di ritorno, un numero crescente di pagine visitate per singolo utente ed in generale un maggior livello di interazione con il sito. Dunque utenti targhetizzati in modo migliore e più fedeli.
Questa premessa era fondamentale per introdurre il discorso dell’ottimizzazione delle performance di un sito web, utilizzando alcune funzioni che la tecnologia attuale ci mette a disposizione.
Analizzare le Perfomance di un sito
Una corretta analisi SEO, ad esempio effettuata con lo strumento Site Audit di SEMrush, che ci consente di individuare rapidamente eventuali criticità lato SEO, non può non tenere in considerazione l’analisi delle performance di un sito.
Tra i diversi tool che la rete mette a disposizione andiamo ad elencare i più utilizzati:
- Google Page Speed Insight,
- Pingdom,
- GT Metrix,
- WebPagetest.
Si possono ricavare molte informazioni utili da questi strumenti. Infatti ci forniscono una panoramica delle perfomance del sito, indicando i tempi di caricamento, il peso delle pagine, il numero di risorse richieste, attribuendo poi una valutazione che tiene in considerazione diversi aspetti tecnici, tra i quali:
- TTFB: Tempo di risposta del server prima inviare al browser l’HTML utile al caricamento della prima schermata visibile (above the fold).
- Pesantezza delle risorse esterne da caricare.
- Abilitazione della cache del browser.
- Redirect multipli.
- Presenza o meno di script inutili alla visualizzazione della prima schermata (prima i contenuti visibili).
- Peso delle immagini.
- Abilitazione della compressione Gzip.
- Presenza di un CDN - Content Delivery Network - che permetta di scaricare risorse Css e Js dall’esterno contemporaneamente.
- Compressione e/o minificazione di file Css, Html e Js.
Questi sono alcuni tra i parametri principali da tenere in considerazione nell’ottimizzazione delle performance di un sito per ottenere una valutazione positiva.
Come sfruttare Google Page Speed Module per migliorare le Performance lato server
Da qualche anno i Google Labs hanno rilasciato un modulo per Web server Apache che permette l’ottimizzazione di un sito web garantendo maggiore velocità di caricamento delle risorse HTML, CSS, JS e delle immagini senza dover effettuare alcun intervento manuale lato server.
Dopo aver installato il modulo, il caricamento delle pagine PHP/Apache sarà molto più rapido.
Gli aspetti principali su cui il mod_pagespeed ha effetto sono:
- Ottimizzazione/compressione/resize delle immagini.
- Caching.
- Caricamento/ Canonicalizzazione delle librerie Javascript.
- Prefetch delle chiamate DNS.
- Conversione delle JPEG in formato progressivo.
- Possibilità di includere nell’ottimizzazione anche risorse esterne dove non gira mod_pagespeed.
La documentazione ufficiale, con tanto di esempi, descrizioni, avvisi e best practice è disponibile sul sito ufficiale degli sviluppatori di Google, alla sezione PageSpeed.
Per ridurre il rischio di fare danni vi consiglio di leggere con attenzione le cosiddette “Avvertenze” in quanto Google ci indica a quali problemi di incompatibilità potremmo andare incontro.
Se non hai competenze approfondite lato server e abitualmente lavori su shared hosting assicurati che il servizio hosting che utilizzi supporti tale funzionalità e ti dia la possibilità di gestirla. Ultimamente molti provider hanno implementato tale supporto nelle proprie offerte commerciali.
Ma se non abbiamo competenze specifiche, possiamo comunque migliorare le prestazioni del nostro sito web utilizzando sistemi di ottimizzazione automatica?
Diciamo che utilizzare questi sistemi per ottimizzare la richiesta di risorse che si ripetono all’interno di un sito sicuramente può essere utile e, spesso e volentieri, ci permette di risolvere delle problematiche comuni anche se non abbiamo una conoscenza approfondita (vedi ad esempio ottimizzare le performance di un CMS come Wordpress attraverso l'utilizzo di plugin), tuttavia l’ottimizzazione manuale è sempre da preferire.
Tra gli altri servizi che permettono di ottimizzare le performance di un sito, ci sono quelli che offrono la possibilità, gratuita o a pagamento, di utilizzare i cosiddetti Content Delivery Network – CDN.
Migliorare le Performance web utilizzando un CDN
Alcuni fattori esterni come un intenso traffico o la distanza tra il server che ospita il nostro sito e l'utente possono diminuire le prestazioni di una pagina web ed influenzare negativamente l’esperienza utente. Uno dei sistemi per migliorare le performance di un sito è quello di implementare un servizio CDN.
Cos’è una CDN?
Un Content Delivery Network è una rete di consegna dei contenuti
Un sistema inventato negli anni ’90, pensa un po', proprio in Italia!
La funzionalità di una CDN è relativamente semplice, infatti il compito è quello di distribuire su più nodi della rete, a livello globale, il caricamento di alcune risorse statiche, in modo da “consegnare” i file ai visitatori partendo dal nodo della rete più vicino alla loro posizione. I servizi CDN hanno numerosi data center sparsi in tutto il mondo, ed in ognuno di essi vengono pre-caricati i file statici del tuo sito web.
Il network ridistribuisce dunque localmente il contenuto del server e ne conserva nella cache i file che non richiedono di un continuo aggiornamento.
Questo servizio risulta molto utile soprattutto quando si lavora a progetti internazionali, in quanto permette di ottimizzare e accelerare il caricamento dei contenuti, consegnando le risorse statiche non direttamente dal server originale ma da quello più vicino alla posizione da cui parte la richiesta, in ogni parte del mondo.
Come funziona praticamente una CDN
Un utente accede al sito ed interroga i server DNS; la CDN re-indirizza la richiesta verso il nodo CDN più vicino all'utente con un notevole risparmio sui tempi di latenza. In questo modo, ad esempio, se il server principale si trova in Europa e un utente si collega dall’America potrà caricare la pagina più velocemente, perché tutti i contenuti saranno forniti dal nodo più vicino.
Inoltre se l’utente accede nuovamente alla pagina entro un tempo stabilito (configurabile dalle impostazioni), il nodo CDN più vicino distribuirà automaticamente il contenuto statico direttamente dalla sua cache, senza richiedere nuovamente le risorse al server.
Quali tra i principali Providers del mercato propongono soluzioni CDN?
- Akamai,
- Cloudflare,
- Amazon Cloudfront,
- OVH,
- Max CDN.
Queste aziende offrono servizi scalabili, alcuni - come Cloudflare - anche gratuiti. Spesso e volentieri inoltre offrono servizi di firewall integrati alla CDN che consentono anche di aumentare il livello di sicurezza sul nostro sito, oltre ad offrire numerose altre possibilità di ottimizzazione.
Se come me pensi che le performance di un sito siano un aspetto da non sottovalutare ai fini di una corretta strategia di visibilità online, ti consiglio di approfondire l’argomento!
E tu hai mai usato uno dei servizi di cui ti ho parlato oggi per migliorare le Prestazioni del tuo sito web?
Ti invito a farcelo sapere nei commenti indicandoci la tua esperienza, che sarà utile anche per gli altri utenti del nostro blog!