Loading ...

Testare la velocità di un sito web con cURL

Testare la velocità di un sito web con cURL

Diciamo che ormai cURL non ha più bisogno di presentazioni!

Oggi lo usiamo per calcolare il tempo di caricamento di una pagina.

Cominciamo con il protocollo HTTP:

$ curl -s -w 'Test per :%{url_effective}nn
Lookup Time:tt%{time_namelookup}n
Connect Time:tt%{time_connect}n
Pre-transfer Time:t%{time_pretransfer}n
Start-transfer Time:t%{time_starttransfer}nn
Total Time:tt%{time_total}n' -o /dev/null http://www.google.com

Test per :http://www.google.com/

Lookup Time:		0,004123
Connect Time:		0,020027
Pre-transfer Time:	0,020044
Start-transfer Time:	0,036484

Total Time:		0,036511

Ho spezzato il comando per vederlo meglio, ma va scritto tutto su una riga ovviamente.

Le opzioni passate a cURL sono:

  • time_namelookup: indica il tempo richiesto per la name resolution
  • time_connect: segnala il tempo impiegato per la connessione TCP al server
  • time_pretransfer: evidenzia il tempo impiegato per iniziare il trasferimento dei file
  • time_starttransfer: mostra il tempo che impiega il primo byte ad essere trasferito
  • time_total: restituisce il dato relativo al tempo totale necessario per l'intera operazione

Per HTTPS:

$ curl -s -w 'Test per :%{url_effective}nn
Lookup Time:tt%{time_namelookup}n
Connect Time:tt%{time_connect}n
AppCon Time:tt%{time_appconnect}n
Redirect Time:tt%{time_redirect}n
Pre-transfer Time:t%{time_pretransfer}n
Start-transfer Time:t%{time_starttransfer}nn
Total Time:tt%{time_total}n' -o /dev/null https://www.google.com

Test per :https://www.google.com/

Lookup Time:		0,004150
Connect Time:		0,021870
AppCon Time:		0,088643
Redirect Time:		0,000000
Pre-transfer Time:	0,088716
Start-transfer Time:	0,107941

Total Time:		0,107987

Qui abbiamo aggiunto due opzioni:

  • time_appconnect: indica il tempo impiegato prima che la connessione SSL inizi ad essere gestita
  • time_redirect: mostra il tempo impiegato da tutti i redirection step prima che l'operazione sia conclusa
(Via TecMint).

Enjoy!