Aumentare la velocità del vostro blog WordPress in 8 modi

Voglio condividere delle soluzioni che ho adottato per aumentare la velocità del blog frutto di varie letture effettuate in Rete.

Il beneficio, oltre quello evidente di una migliore fruizione per i visitatori, si sente anche a livello SEO, infatti Google è un fattore che tiene in considerazione riguardo al ranking.

1. Utilizzare un tema leggero

un tema leggero (ricercare ad esempio minimalista) sia dal punto di vista grafico che di funzioni PHP e script utilizzati all’interno è la base di partenza.
Come è possibile notare molti blog di successo usano temi/templates semplici e puliti.

2. Effettuare analisi performance con Firebug (e gli addons Pagespeed e Yslow)

Firebug è un’utile strumento (addon Firefox) utilizzato principalmente per effetture debug sul codice, ma ha anche un’utile funzione per misurare il caricamento di una data pagina web (tab “All” -> sottotab “Net”): vengono analizzate tutte le richieste (request) e il loro tempo di caricamento. Per una migliore analisi è anche possibile utilizzare l’estensione Firefox Page Speed di Google in cui è possibile analizzare una pagina e viene mostrato un punteggio riguardo la velocità ottenuta, vengono elencate le criticità con opportuni simboli e vengono dati dei consigli per ottimizzare la pagina in termini di velocità in base all’analisi effettuata; un’altra estensione simile è Yslow di Yahoo

3. “minificare” i fogli di stile e gli script Javascript
tramite dei plugins per WordPress è possibile ridurre considerevolmente il peso dei fogli di stile e degli script Javascript tramite una tecnica che li “comprime”.
E’ possibile utilizzare l’apposito modulo presente nel plugin W3 Total Cache (vedesi punto successivo)

4. abilitare e utilizzare il caching
tramite degli appositi plugin è possibile utilizzare la funzione di caching delle pagine, ovvero la prima volta che viene visitata essa viene memorizzata all’interno del proprio server web in modo statico (per intenderci in html), le successive volte viene richiamata la pagina salvata anzichè ricomporre dinamicamente la pagina php.
Esistono vari plugins, quello che mi sono trovato meglio e più performante è il W3 Total Cache; le impostazioni di default vanno bene in linea generale, se si vuole approfondire le impostazioni nel dettaglio è possibile seguire l’ottima guida (in inglese) di Zemalf.com e/o StrictlyOnlyBiz

5. utilizzare il modulo Apache mod_pagespeed se il proprio hosting lo prevede
si tratta di un recente modulo Apache sviluppato da Google, guarda questo video comparativo

6. ottimizzare saltuariamente il database
ogni tanto è buona norma ottimizzare le tabelle del database di WordPress, è possibile fare ciò direttamente tramite PHPMyAdmin o appositi plugins (es. WP-Optimize)

7. scegliere un host efficiente
un servizio di hosting con una buona banda a disposizione e in grado di gestire diverse connessioni contemporaneamente

8. ridurre il peso delle immagini e se possibile hostarle in servizi appositi
cercare di comprimere il più possibile le immagini presenti nel blog e se possibile hostarle in appositi servizi (es. Picasa, Flickr, ecc…) anzichè nel proprio web server

Testa le performance siti web

Esistono diversi tool sia commerciali che gratuiti per testare le performance del proprio sito web a fronte di un tot. numero di utenti.

Un programma open source molto semplice, seppur non nuovissimo (risale al 2001) ma efficace, è OpenLoad per Windows e Linux.
Il programma effettua richieste HTTP e quindi genera traffico con la possibilità di specificare numero di utenti virtuali.

Funziona da linea di comando digitando:

openload [options] sitoweb 10

le opzioni che volendo è possibile specificare sono descritte qui, mentre 10 è il numero di utenti virtuali simulato (di default è 5 se non si specifica niente, ovviamente è possibile inserire qualsiasi numero desiderato)

Nei risultati vi sono delle sigle, quelle più importanti da analizzare sono Tps (il numero delle richieste completate per secondo), Resp time (il tempi di risposta), Err (svela la percentuale di errore), Count (il numero totale delle richieste completate).

Un’altro strumento simile e utile e ugualmente opensource, solo per gli utenti Linux, è httperf, anche questo funziona da linea di comando.

Misuratori performances free per IE

Per lavoro cercavo delle alternative ai Firefox addons per la misurazione delle performances per Internet Explorer, quindi statistiche caricamento di un sito… ho trovato questi 2 ottimi tool:

PageTest (opensource)
IBM PageDetailer (free versione base)

Personalmente ho provato il primo (più aggiornato) e mi sono trovato bene. Richiede ultimo NET framework installato (3.5). A fine installazione viene aggiunta la voce AOL PageTest agli Strumenti di IE. Quindi per lanciarlo selezionarlo e poi semplicemente digitare nel browser l’URL da caricare/analizzare. Verrà creato in realtime un grafico con tutte le request in ordine progressivo di tempo. E’ quindi possibile esportare i risultati in vari formati (formato interno proprietario, report txt, immagine gif del grafico), inoltre tramite la funzione Optimization Checklist verranno indicate con simboli grafici sempre nello stesso grafico.
Inoltre è presente l’analisi in dettaglio delle varie request-response.

Tools gratuiti controllo e qualità software

Una parte “critica” che non dovrebbe mai mancare in un’azienda che produce software è il controllo e qualità dei prodotti meglio se effettuato con tools non commerciali ma free per abbattere i costi. Eccovene una serie di link utili suddivisi per tipologie:

Bug tracking o issue tracking: (è un software per tenere traccia dei cosidetti bugs relativi alla fase di programmazione) per una più ampia descrizione nonchè esempio vi rimando a questo articolo di Simone Carletti.

Bugzilla (web based, scritto in Perl, db MySQL o PostgreSQL)
BugTracker.NET (web based, scritto in Asp.Net C#, db SQLServer)
Mantis (web based, scritto in PHP, db MySQL, PostgreSQL, MS SQL)
Redmine (web based, scritto in Ruby, db MySQL, PostgreSQL, SQLite)
SimTracker
Bugtrack (web based, scritto in Perl)
Zentrack (web based, scritto in PHP)
Trac (web based, scritto in Python, db SQLite, PostgreSQL, MySQL)
16bugs.com (servizio online gratuito)

test design management: (categoria di software per la creazione di casi di test)

Xqual Xstudio (scritto in Java, db MySQL, PostgreSQL, Oracle) dalle prossime versione disponibile anche in lingua italiana! 🙂 frutto di un’attiva collaborazione tra me e lo sviluppatore.
altri software (tabella comparativa molto ben fatta)

web load / stress and performance: (software che permette di simulare vari carichi agli applicativi sviluppati e quindi di misurarne le performances per poi intervenire per ottimizzarlo dove ci sono le “lacune” dovute a mal programmazione, ecc.)

OpenSTA
Webload

document repository: (software per la gestione della documentazione condivisa)

OWL (web based, scritto in PHP)
OpenKM
LogicalDOC Community Edition versione gratuita disponibile per la comunità Open Source su SourceForge. Consiste in una piattaforma per la gestione dei documenti che offre la possibilità di ricercare documenti per parametri, per etichette o per l’intero contenuto testuale (full-text)

Infine tre link generali in inglese con una miniera di informazioni ecc. riguardo il software testing:

Sofware quality assurance forum
Testing software FAQs
SoftwareTestingWiki

Ricevi gli aggiornamenti del blog

Vuoi rimanere aggiornato riguardo gli ultimi articoli pubblicati nel blog? Inserisci la tua email per sottoscriverti alla newsletter!