SMsoft – informatica e dintorni

Test di carico (stress / regression test and benchmark utility) per server web

Per verificare come un server web risponde alle richieste più consistenti, vanno effettuati dei test prima del rilascio. Questo consente di capire se la configurazione è corretta, se l’hardware è adeguato ed anche, in qualche modo, se gli script sono ottimizzati.

Ci sono tanti strumenti per fare queste verifiche, alcuni a pagamenti, altri gratuiti. Oggi vi parlo di un software Open Source che fa perfettamente il questo lavoro: effettua delle richieste ad un server web e ne indica i risultati. Siamo parlando di Siege (stress / regression test and benchmark utility), un software scritto per GNU/Linux e portato su altre piattaforme (AIX, BSD, HP-UX e Solaris). In linea di massima si dovrebbe poter compilare sui vari derivati UNIX System V e sui nuovi sistemi BSD.

L’installazione su Debian è molto semplice:

mentre per le altre distro o SO rimando alla documentazione nel sito ufficiale.

Siege può essere eseguito per simulare connessioni ssimultanee da parte di un certo numero di utenti contemporanei (parametro c) per un certo numero di volte (parametro r) per una determinata durata (parametro t). Ma passiamo all’opera. Ad esempio, per verificare la risposta a 10 utenti simultanei che richiamano tre volte la pagina indice del server web attivo su localhost, basterà eseguire:

Questo darà un dettaglio delle singole connessioni ed un riepilogo del tipo:

Bene, questo potrebbe essere utile per capire come risponde una determinata pagina, ma generalmente la navigazione degli utenti interessa tutto il sito, o almeno parte del sito. In questo caso è molto più utile raccogliere un elenco di pagine (che si presume possano essere le più visitate) e poi farle “navigare” per noi da Siege. Se raccogliamo i vari indirizzi in una file chiamato urls.txt (uno per riga a cui possiamo anche impostare dei valori da passare in GET o POST), e vogliamo far navigare queste pagine in modo random a 10 utenti, per 5 minuti con un ritardo tra il richiamo di una pagina e l’altra di 5 secondi (diciamo il tempo minimo per dare uno sguardo ad una pagina), possiamo eseguire:

Questo testo sicuramente potrà dare informazioni più interessanti da analizzare.
Sicuramente la posibilità di far “navigare” alcuni indirizzi può essere interessante; vi segnalo Sproxy, un altro tool degli stessi sviluppatori, che attiva sul proprio PC un proxy da configurare nel browser e che permette di raccogliere i dati di una sessione di navigazione da poter poi passare a Siege.

Per finire, ricordo che alcuni parametri di siege possono essere impostati nel file ~/.siegerc. Per creare un file con valori di default ed i commenti, basterà eseguire:

Generalmente viene creato anche un file di log, posizionato in /var/siege.log.

enjoy




Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario :-)
*
Taggato su: ,

Commenti

Page optimized by WP Minify WordPress Plugin