You are here

Prestazioni sito web: test con software e strumenti online

Inviato da giovanninews on Ven, 13/04/2012 - 19:45

Prestazioni e analisi del sito web Sulle prestazioni di un sito web, spero di poter aggiungere qualcosa di nuovo su quanto già c' è nel web. Al fine di valutare e migliorare le performance di un sito web, personalmente uso l' estensione Firebug per Firefox e le sottoestensioni Page Speed di Google, YSlow di Yahoo! e DOM Inspector di Mozilla.

Chi usa browser diversi da Firefox avrà plugin analoghi (browser permettendo). Utilizzare direttamente il browser e le sue estensioni offre il vantaggio di utilizzare strumenti aggiornati e sicuramente più efficienti.

Ma questo non da indicazioni sulla velocità di caricamento della pagina; sembra che sia necessario ricorrere a strumenti esterni.

Esistono in internet centinaia di siti che oltre a dare indicazioni sulle prestazioni del sito web ne danno anche la velocità di caricamento della pagina.

Ma sono questi strumenti esterni realmente affidabili ?

I migliori, per analizzare le prestazioni del sito web, utilizzano gli strumenti indicati, cioè Page Speed ed YSlow. Le versioni attuali di questi due strumenti sono al momento:
- Page Speed    : Versione 1.12.03
- YSlow        : Versione 3.1.0

Tra i tanti che nel tempo mi sono soffermato a valutare ed analizzare ne ho scelti tre, probabilmente già conosciuti ed usati dai webmaster: Pingdom Tools, GTmetrix e WebPagetest.

1) Pingdom Tools è il più conosciuto dei tre, probabilmente forse perchè è il più generoso; i tempi di caricamento della pagina rilevati da Pingdom Tools sono di molto inferiori rispetto a Gtmetrix e WebPagetest, spesso più bassi del 50%.

Pingdom Tools, come strumento di analisi delle prestazioni del sito web, utilizza Page Speed e DOM Inspector o qualcosa di simile.

Fino a qualche mese fa Pingdom Tools indicava la versione di Page Speed, una versione abbastanza datata; ultimamente è stata tolta l' indicazione della versione. E' evidente che Pingdom Tools non viene più aggiornato, relativamente agli strumenti di analisi.

Per avere un tempo affidabile sulla velocità del tempo di caricamento della pagina web, è necessario fare diversi test e quindi una media, visto che i test sono molto discordanti.

I punti di forza di Pingdom Tools sono:

  • interfaccia grafica, molto semplice ed intuitiva, dalla quale è facile capire dove intervenire per migliorare le prestazioni del sito web
  • finestra di analisi della pagina (Page Analysis) che ci offre il riassunto del tempo speso, suddiviso per stato, tipo di contenuto e dominio
  • lo storico dei test, che comprende gli ultimi 15 giorni (versione gratuita ?)
  • strumenti per il monitoraggio ed il tempo di risposta del sito web.

2) di GTmetrix , sito web per analizzare prestazioni e tempo di caricamento pagina web, ho già avuto occasione di parlare. Tra i 3 è probabilmente il più costante; il tempo di caricamento della pagina, tra un test e l' altro, varia di poco.

E' questo probabilmente il fattore che ne determina l' affidabilità. L' ulteriore vantaggio di GTmetrix sugli altri è che utilizza anche YSlow, oltre a Page Speed, come strumenti di analisi delle prestazioni del sito web.

GTmetrix usa al momento, come strumenti di analisi delle prestazioni, Page Speed v. 1.12.0.1 ed YSlow 3.0.4; è questo anche l' indice che informa che GTmetrix è frequentemente aggiornato in merito agli strumenti di analisi.

Anche GTmetrix utilizza un DOM Inspector o qualcosa di simile. Il confronto delle prestazioni del sito web, utilizzando GTmetrix da una parte e Page Speed ed YSlow come estensioni del browser dall' altra, porta infatti a risultati quasi identici.

3) WebPagetest è il più avaro dei tre in relazione al tempo di caricamento della pagina; forse, per questo motivo, è lo strumento online per l' analisi delle prestazioni del sito web e della velocità di caricamento della pagina che merita più attenzione.

Come strumento di analisi utilizza Page Speed v. 1.12 (sotto release non indicata), DOM Inspector o qualcosa di simile, oltre sicuramente a qualche altro strumento.

WebPagetest è la versione online di AOL Pagetest, rilasciato pubblicamente come software open source nel 2008, e da allora ha fatto parecchia strada. Pagetest fu inizialmente costruito per Internet Explorer 6 e 7.

WebPagetest, attraverso le sue ricche finestre, è molto prodigo di informazioni che vanno studiate nei minimi dettagli.

Ciò che mi da molto da pensare di WebPagetest, è sempre il risultato del primo test della pagina web; generalmente, nel mio caso, al primo test mi da sempre un First Byte Time elevato che si abbassa nei successivi test.

Un First Byte Time che può incidere di oltre un secondo sul tempo di caricamento della pagina. E' un parametro che dipende dal sito o dall' hosting ?

Altra finestra che mi stupisce di WebPagetest è l' ultima, Screen Shot; questa visualizza tre screen shot della pagina memorizzati durante il test con il log dell' attività; i tre screen shot sono gli stessi che si rilevano nel GWT di Google relativamente alle Anteprime istantanee.

ULTIMA chicca da studiare : ShowSlow ; utilizza anch' esso WebPagetest e sembra che anche questo ha a che fare con Google.

Commenti

Ciao Giovanni,
come sempre ottimo articolo. Alcuni di questi test non li conoscevo, come ShowSlow, ma non posso neanche provarli. O non si riesce a stabilire la connessione con il mio sito, oppure mi restituisce l'errore sito inesistente.
Siccome gli attacchi al server, di cui ti vevo parlato, non sono ancora terminati, spesso il sito è giu, allora immagino che abbiano messo un filtro su quei siti che inviano troppe richieste in poco tempo. Però con altri test come il w3c non ci sono proplemi.
Appena la situazione server migliora proverò ancora. Tuttavia concordo che il migliore di tutti, anche per via dei suggerimenti, è GTmetrix.

Gregorio, grazie per il tuo commento.
ShowSlow è ancora da provare. Concordo con GTmetrix. Pensavo che per te avevavo risolto. Comunque hanno messo la nuova versione di CPanel.
Giovanni.

Ok tutto bene il nostro test. Nel frattempo, sempre a proposito di GTmetrix stavo provando la direttiva KeepAlive, in questo modo:

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15

ma sembra che Gtmetrix non rilevi il cambiamento; devo averlo scritto in modo non corretto :(

blush Ho impiegato un pò a risponderti perchè la domanda per me è complessa; l' amministratore dell' hosting potrebbe risponderti meglio (se lo fa, fammelo sapere). Penso che il Keep-Alive non possa essere impostato da htaccess, ma deve essere impostato dal file di configurazione di Apache (forse con un server dedicato te lo fanno fare). Comunque, da quello che vedo, sia per me che per te, il Keep-Alive è impostato su ON con i parametri Keep-Alive: timeout=5, max=100 (vi è un timeout un pò più basso di quello che vorresti impostare tu). L' unica cosa è che il Keep-Alive non è rilevato sulla prima richiesta della pagina, ma a tutte (quasi) le richieste successive contenute nella pagina. Puoi rilevarlo con WebPagetest, nella finestra del dettaglio, su Response Headers.

No problem, come vedi pure io ho i miei tempi per replicare.
Visto che il GTmetric consiglia di impostare il valore Connection a Keepalive invece di Close ho fatto qualche verifica perchè non è mica chiaro come stanno le cose.

Il php.info del sito su netsons lo riporta come variabile di apache, non come servizio, e sembrerebbe abilitato, ecco l'immagine: my.jetscreenshot.com/5512/20120418-8bbk-39kb.jpg

Poi però ho scoperto che pure Google dai WMT lo rileva come Close:
my.jetscreenshot.com/5512/20120418-atku-45kb.jpg

Mentre su altro mio sito ospitato su Altervista risulta abilitato, sia pure con timeout=1 e max=100:
my.jetscreenshot.com/5512/20120418-u1ot-52kb.jpg

Altra cosa da notare: i tempi do download della pagina. Quella su Altervista con Connection=Keepalive 52 ms e quella su Netsons con Connection=Close ben 265 ms. Quindi il Keep alive a qualcosa serve.

Da notare che le pagine dei due siti sono quasi identiche anche come peso, forse è piu pesante quella piu veloce perchè contiente il bannerino w3c.

Devo aprire un tiket per chiedere info, ti farò sapere.

Ulteriore test con WebPagetest, i due siti a confronto.
Altervista senza alcun intervento in htaccess riporta un Keepalive: timeout=1, max=100

Mentre Netsons riporta Keepalive: timeout=5, max=100
Qui io in htaccess ho scritto:
---
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
----
e quindi sembra che venga bellamente ignorato, senza causare errori.
Io ci sto capendo sempre meno, difficile trovare due test che dicano la stessa cosa :(

my.jetscreenshot.com/5512/20120418-zbox-132kb.jpg