Ottimizzare un sito Web basato su WordPress significa massimizzare affidabilità e soprattutto prestazioni del CMS, del Database Manager MySQL in cui sono archiviati i dati e dell’ambiente di sviluppo in cui l’installazione è attiva. Si tratta di un’operazione essenziale considerando quanto le interruzioni di servizio, le latenze e i rallentamenti siano dei fattori in grado di influenzare negativamente la user experience in fase di navigazione e di incrementare la cosiddetta frequenza di rimbalzo, o bounce rate, cioè la metrica che consente di misurare il tasso di abbandono di una pagina Internet.
Velocità di navigazione e bounce rate
Soprattutto quando si gestisce un sito Web che offre un servizio o commercializza dei prodotti tramite e-commerce, un bounce rate elevato può danneggiare pesantemente i livelli di produttività e il giro d’affari di un business online.
A tal proposito è utile citare una recente rilevazione dei ricercatori di KISSmetrics secondo la quale il 47% degli utenti si aspetta che una pagina Web finisca di caricarsi in 2 secondi o meno, il 40% abbandona un sito Web dopo un tempo di caricamento superiore ai 3 secondi e una latenza pari ad almeno un secondo si traduce in una riduzione delle conversioni del 7%, dove per “conversione” si intende il processo che porta dalla visita di un sito Web al compimento di un’azione, come per esempio l’acquisto di un bene o la sottoscrizione di un servizio.
L’esigenza di disporre di un sito Web performante è ancora più pressante quando si tiene conto del fatto che attualmente la maggior parte del traffico Web viene generato dai dispositivi mobile. Gli utilizzatori di questi device producono mediamente frequenze di rimbalzo più elevate per diverse ragioni: sono abituati al caricamento quasi istantaneo delle App native, spesso navigano in condizioni che riducono i tempi disponibili per la consultazione dei siti Web e non di rado usufruiscono di connessioni a consumo che rendono meno conveniente l’accesso alle pagine Internet più lente.
E’ infine importante sottolineare il rapporto tra ottimizzazione delle performance e SEO (Search Engine Optimization), le prestazioni sono diventate infatti uno dei criteri utilizzati dall’algoritmo di Google per determinare il posizionamento di una pagina Web nella SERP (Search Engine Results Page), ciò si traduce in una penalizzazione dei siti Internet meno veloci in fase di caricamento. Nello stesso modo una pagina Web a cui un utente cerca di accedere durante un’interruzione di servizio (downtime), potrebbe non essere più visitata a causa della user experience negativa e penalizzata dai motori di ricerca perché considerata malfunzionante.
Misurazione delle performance
Esistono numerose metriche che permettono di misurare il livello di performance di un sito Web, così come sono disponibili tantissimi strumenti che consentono di testare un sito Web sulla base di tali metriche. Tra questi ultimi uno dei più noti e PageSpeed Insights di Google che analizza i contenuti di una pagina Internet e genera automaticamente dei suggerimenti per renderla più veloce sia su mobile che su desktop.
Il tool di Big G funziona in modo molto semplice e per utilizzarlo è sufficiente digitare nel form del servizio l’URL della pagina che si desidera analizzare.
PageSpeed Insights attribuisce un punteggio da 0 a 100 riguardo al livello generale di performance e fornisce dati utili per verificare i singoli parametri che massimizzano la qualità della user experience in navigazione. Fra i risultati proposti vi sono ad esempio l’FCP (First Contentful Paint), cioè la metrica che indica il momento in cui vengono visualizzati il primo testo o la prima immagine di una pagina, l’FMP (First Meaningful Paint), che indica quando diventano visibili i contenuti principali di una pagina, e l’indice di velocità, che mostra la velocità con cui diventano visibili i contenuti di una pagina.
I report così proposti consentono di agire sugli elementi di criticità rilevati, correggerli e ottenere prestazioni più elevate.
WordPress e fattori di ottimizzazione
Quali sono gli aspetti di un’installazione di WordPress che devono essere tenuti in considerazione per l’ottimizzazione di un sito Web? Quali permettono di rendere le pagine Internet più performanti? Per rispondere a queste domande è possibile fare riferimento alle cause che più frequentemente danno luogo a cali delle prestazioni, generalmente identificabili in:
- un ambiente hosting dotato di risorse limitate, non configurato correttamente o, a sua svolta, scarsamente ottimizzato per WordPress.
- Una configurazione del CMS che richiede una quantità di risorse eccessiva al server host o al DBMS (overhead). Come avviene nel caso in cui, in assenza di un sistema efficiente per la gestione della cache, MySQL deve soddisfare costantemente un numero elevato di query per rispondere alle medesime interrogazioni.
- Pagine o immagini sovradimensionate, si tratta di errori molto frequenti n progetti dove gli aspetti legati alla resa grafica e al front-end prevalgono su quelli funzionali e le competenze in tema di differenze tra i formati e algoritmi di compressione possono essere limitate.
- Chiamate a script esterni, un problema che coinvolge in particolare i siti Web che ospitano numerosi annunci pubblicitari o che richiamano risorse di terze parti come per esempio font e glifi ospitati in repository remoti. In alcuni casi, non rari, le chiamate possono essere generate dall’esecuzione di script malevoli (come per esempio quelli finalizzati al crypto mining), problematica legata non di rado al punto seguente.
- Scarsa puntualità degli aggiornamenti. La community di sviluppatori che ruota intorno a WordPress rilascia continuamente upgrade che migliorano e rendono più performanti e sicuri il core, le estensioni e i temi grafici dell’applicazione, per questo motivo trascurare gli aggiornamenti ha spesso un prezzo elevato in termini di prestazioni.
- Plugin e temi non adeguatamente selezionati. Un’estensione non dovrebbe essere considerata valida soltanto per la funziona che svolge, così come la scelta di un tema non dovrebbe essere determinata soltanto dalla sua resa grafica. Qual è il loro livello di compatibilità con il core e gli altri plugin attivi nell’installazione di WordPress? Quante query vengono inviate al database? Il codice è stato scritto correttamente? Sono stati operati dei test con la versione corrente del CMS? Qual è la frequenza di aggiornamento? Queste sono solo alcune delle domande a cui bisognerebbe rispondere prima di adottare un tema o un plugin o per valutarne l’impatto sulle performance.
Le problematiche esposte richiedono tempo e risorse per essere rimosse, mentre in molti casi si ha la necessità di concentrare la propria attenzione sugli aspetti legati alla produttività e, in altri, in numero di installazioni da gestire potrebbe essere anche molto elevato generando l’esigenza di operare in un ambiente nativamente ottimizzato per WordPress come per esempio un hosting gestito.
Ottimizzazione in un hosting WordPress gestito
Per descrivere i vantaggi di un hosting gestito dal punto di vista dell’ottimizzazione è possibile fare riferimento all’esempio fornito dall’Hosting WordPress Gestito di Aruba, si tratta infatti di una piattaforma appositamente progettata per offrire prestazioni elevate per le logiche di funzionamento tecnico del CMS.
A seconda della formula scelta il servizio propone sin da subito il numero approssimativo di visitatori mensili per cui il piano è consigliato. Tale valore non costituisce un limite di blocco perché la quantità di traffico può essere anche molto superiore ad esso, ma rappresenta un suggerimento sui volumi ottimali per garantire performance migliori. Per ciascuna installazione supportata di WordPress sono poi disponibili delle istanze dedicate espresse in numero di container dedicati al dominio associato, l’entità di tale parametro è direttamente proporzionale alle prestazioni di un sito Web dal punto di vista della velocità di caricamento delle pagine Internet, dei tempi di risposta alle interrogazioni, del numero di connessioni simultanee al database e del numero di visitatori supportati in contemporanea. Tutti i piani gestiti includono inoltre un sistema di caching che riduce l’impatto del traffico sulle performance del database.
I database (uno per il sito Web in fase di produzione e un altro per lo staging) così come lo spazio Web illimitato sono allocati in unità di memoria allo stato solido (SSD, Solid State Drive) che riguardo alle prestazioni offrono maggiori benefici rispetto ai più datati HDD (Hard-disk Drive). Gli SSD non presentano infatti parti mobili, come per esempio i dischi degli HDD, sono quindi meno esposti a rotture e garantiscono tempi di avvio più brevi nonché velocità di lettura e scrittura molto elevate annullando nel contempo i rischi di frammentazione dei dati.
Disponibile il supporto ad HTTP/2, un'evoluzione del protocollo di rete HTTP implementata a partire dal progetto SPDY sviluppato da Google. Esso garantisce compatibilità con le precedenti versioni di HTTP e con tutti i browser Web più diffusi (che lo supportano vincolandolo alla cifratura delle negoziazioni), riduce drasticamente i tempi di latenza delle pagine Web consentendo caricamenti più rapidi, attiva un processo di minificazione delle richieste che vengono così gestite in tempi più brevi e determina la compressione dei pacchetti veicolati per velocizzarne l’interscambio.
Dal punto di vista della sicurezza il servizio integra un sistema di scansione antimalware e di rimozione automatica dei malware, questa caratteristica offre una linea di difesa addizionale contro tutti gli script e gli attacchi esterni la cui azione potrebbe pesare sulle prestazioni.
Gli aggiornamenti del core, dei plugin e dei temi sono automatici, le release più recenti sono quindi sempre disponibili e vengono sottoposte ad una procedura di verifica per garantire piena compatibilità e affidabilità con il progetto corrente. Sempre per quanto riguarda i plugin, l’Hosting WordPress Gestito di Aruba mette a disposizione una whitelist di estensioni consigliate e una blacklist in cui vengono elencate quelle che non si dovrebbero installare e sono quindi vietate.
La scelta dei plugin più adatti alla propria installazione di WordPress è però un’attività che per raggiungere il massimo livello di efficienza richiede il rispetto di criteri specifici, per questo motivo l’argomento verrà approfondito ulteriormente nella prossima lezione.