Eines per a tests de càrrega

De Guifi.net - Wiki Català

Revisió de 08:58, 6 jul 2010; Sergi (Discussió)

(dif) ←Versió més antiga | Versió actual (dif) | Versió més nova→ (dif)

PacketMime

http://dirt.cs.unc.edu/packmime/

ApacheBench

http://en.wikipedia.org/wiki/ApacheBench

Siege

http://www.joedog.org/Siege/Manual

Jmeter d'Apache

Instal·lació des dels repositoris

$ sudo apt-get install jmeter

La versió instal·lada és (Ubuntu karmic):

$ dpkg -l | grep jmeter
ii  jmeter                                2.3.4-0ubuntu5                             Load testing and performance measurement app

Hi han altres paquets per mesurar altres protocols que no siguin HTTP:

$ sudo apt-cache search jmeter
jmeter - Load testing and performance measurement application.
jmeter-apidoc - Load testing and performance measurement application.
jmeter-ftp - Load testing and performance measurement application.
jmeter-help - Load testing and performance measurement application.
jmeter-http - Load testing and performance measurement application.
jmeter-java - Load testing and performance measurement application.
jmeter-jms - Load testing and performance measurement application.
jmeter-junit - Load testing and performance measurement application.
jmeter-ldap - Load testing and performance measurement application.
jmeter-mail - Load testing and performance measurement application.
jmeter-tcp - Load testing and performance measurement application.

Instal·lació dels binaris de la web d'Apache

Descarregueu JMeter:

$ wget http://apache.rediris.es/jakarta/jmeter/binaries/jakarta-jmeter-2.3.4.tgz

Trobareu la última versió a:

http://jakarta.apache.org/jmeter/

Descomprimiu i instal·leu amb:

$ tar xvfz jakarta-jmeter-2.3.4.tgz
$ cd ./jakarta-jmeter-2.3.4/bin
$ ./jmeter
NOTA: L'aplicació utilitza Java

Recursos:

Exemple d'ús

Documentació

Simular trànsit a partir de fitxers access.log

http://jakarta.apache.org/jmeter/usermanual/jmeter_accesslog_sampler_step_by_step.pdf

apache2-utils

Comanda ab (apache benchmarking):

Aquesta comanda la proporciona el paquet apache2-utils:

$ dpkg -S /usr/sbin/ab
apache2-utils: /usr/sbin/ab
$ ab -n 10000 -c 10 http://www.dominiexemple.com/index.html

Recursos:

siege

$ sudo apt-get install siege
$ dpkg -L siege | grep bin
/usr/bin
/usr/bin/siege
/usr/bin/bombardment
/usr/bin/siege.config
/usr/bin/siege2csv 

Configuració:

$ siege.config
$ siege -C
CURRENT  SIEGE  CONFIGURATION
JoeDog/1.00 [en] (X11; I; Siege 2.65b1)
Edit the resource file to change the settings.
----------------------------------------------
version:                        2.65b1
verbose:                        true
debug:                          false
protocol:                       HTTP/1.1
connection:                     close
concurrent users:               15
time to run:                    n/a
repetitions:                    n/a
socket timeout:                 30
delay:                          1 sec
internet simulation:            false
benchmark mode:                 false
failures until abort:           1024
named URL:                      none
URLs file:                      /etc/urls.txt
logging:                        true
log file:                       /var/siege.log
resource file:                  /home/sergi/.siegerc
allow redirects:                true
allow zero byte data:           true
allow chunked encoding:         true
proxy auth:                     
www auth:                       
$ siege -g URL

Recursos:

Generar trànsit amb siege i fitxers access.log d'un Proxy d'un entorn d'Execució

Podeu obtenir un fitxer de log d'exemple (log real d'una escola d'educació secundària):

$ wget http://acacha.org/~sergi/Squid/access.log

Per exemple les últimes mil posicions:

$ sudo tail -n 1000 access.log | awk '{print $7}' > requests.urls

El fitxer el podeu utilitzar amb siege:

O amb wget:

$ wget -i requests.urls

Moltes peticions no funcionaran correctament per que son peticions directes SSL, per eliminar-les:

$ cat requests.urls | grep ^http | sort | uniq > requests1.urls

Hi ha un total de 1375533 peticions:

$ wc -l requests.urls 
1375533 requests.urls

sproxy

És una eina que facilita la tasca de crear fitxers url per a Siege.

http://www.joedog.org/index/sproxy-manual


Benchmark de sistemes Unix

Consulteu Benchmark de sistemes Unix.

Eines de l'usuari