Apache wordpress stress test

June 20, 2009 · 263 views · Print This Post Print This Post · Email This Post Email This Post

Nei giorni precedenti ho fatto diversi stress test ad apache con una macchina virtuale uguale al mio vecchio virtual private e server e con la mia nuova configurazione hardware. Per esegure le prove pensavo di dover installare chissà quale tool o software e invece grazie a linux ed un semplice comando sono riuscito a fare tutti i test in maniera davvero semplice e sopratutto veloce. Ho scoperto che gli stress test per apache  sono davvero un’attività fondamentale per valutare la stabilità e il comportamento di un server in situazioni di carico pesante. All’inizio infatti non capivo perchè il mio vps continuasse a sbombare e a consumare tutta quella ram, poi  ho fatto un test su una mia macchina virtuale con la stessa configurazione hardware e ho capito il motivo di tutti quei blocchi.. grazie allo stress test su apache mi sono accorto che ogni pagina del blog caricata consuma mediamente 6.5 mb di ram solo di script php, poi bisogna aggiungere la memoria e la cpu consumata dalle richieste sql.. in pratica un sacco di richieste hardware…


Il comando utilizzato per eseguire i test e che credo si trovi di default in tutte le distribuzioni linux con su installato apache2 è questo: “ab”
Che banalmente sta per a=apache, b=benchamark se lanciate il comando “man ab” trovate tutte le istruzioni e le opzioni per utilizzare il comando ab.
Ovviamente ecco alcune stringhe di comando preconfezionate per testare il server:

$ ab -n 10 -c 10 http://www.yourdomain.com/index.html

Questo comando simula 10 user concorrenti e 10 richieste contemporanee del file index.html.
Io la prima volta ho settato la mia macchina virtuale con 512 mb di ram poi ho lanciato questo comando con 30 user e 30 richieste il risultato è stato il bocco totale della macchina… lì ho capito perchè il mio vps server si incasinava sempre..
Poi ho riprovato con un giga di ram,la situazione non è cambiata molto, la vm non si è bloccata ma poco ci è mancato.. alchè lì ho capito che dovevo disattivare un po’ di plugin e tentare di alleggerire il carico sul server..
Lo stesso comando di prima può essere lanciato con queste opzioni:

$ab -t 60 -c 10 http://www.yourdomain.com/index.html

In pratica qui ci sono 10  user concorrenti che fanno il maggior numero di richieste conccorrenti per 60 secondi.. questo è davvero un bel test.. se non vi si pianta il server e riuscite ancora a controllarlo e a navigare tranquilli allora avete davvero un bel server..

Il risultato di tutti questi test ovviamente è un dettaglio del tempo di risposta medio in millisecondi per ogni risposta e tanti altri dati…
Ovviamente vi giro un bel link dove sono spiegate meglio tutte queste opzioni:
http://blog.olenepal.org/index.php/archives/300

Poi vi consiglio anche questo:

- durante gli stress test verificate l’uso della memoria,potete utilizzare questo comando: “vmstat -S M 1″ che vi mostrerà ogni secondo quanta memoria ram libera c’è nel vostro sistema.

- Monitorate l’uso della cpu con il comando top, banalmente i programmi che consumano più cpu sono i primi della lista..

Se utilizzate wordpress come piattaforma di blog, potete, anzi dovete aggiungere queste righe di codice in fondo nel file footer.php del vostro tema per capire quanta memoria viene utilizzata e il numero di query richieste:

- <?php echo get_num_queries(); ?> Questo pezzo di codice vi dice il numero di query richieste per completare il caricamento della pagina. Ovviamente meno ce ne sono meglio è…

- <?php timer_stop(1); ?> questo invece vi dice il numero di secondi necessari per generare la pagina.

- <?php echo round(memory_get_usage()/1024/1024, 2)?> questo come potete intuire vi dice quanta memoria ram è stata necessaria per l’esecuzione del codice php e quindi per creare la pagina…

Bene dire che vi ho fornito qualche utile strumento di analisi per capire se il vostro tema/blog o altro stà consumando il giusto quantitativo di risorse hardware.. se conoscete qualche altro trucchetto o tecnica segnalatemela nei commenti!!

Vota l’articolo
(1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Condividi l'articolo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Twitter

Link consigliati

Newsletter e Feed

Ti e' piaciuto questo articolo? allora iscrivi alla newsletter, riceverai ogni nuovo post via mail!!
Loading...Loading...


Se preferiferisci i feed ricordati di iscriverti ai miei Feed!

Commenti

2 Responses to “Apache wordpress stress test”

  1. 2
    Matteo Says:

    Ho inserito il codice che hai suggerito sul mio blog:
    http://matteoc.altervista.org
    e devo dire che è veramente comodo.
    ;)

  2. 1
    lejubila's blog » Stress test di apache / wordpress Says:

    [...] http://www.croccobiscotto.it/linux/apache-wordpress-stress-test/ [...]

Lascia un Commento




Protezione antispam: Somma di sei + nove ?