Locust es una herramienta muy fácil de utilizar con la que podemos simular una cantidad de usuarios en nuestra página web.
Esto es muy útil para saber cuantas visitas es capaz de aguantar nuestra web, y si debemos ampliar o podemos reducir nuestro servidor para ahorrar costes.
Instalando locust
Locust esta programado en python, por lo que para ejecutarlo e instalarlo debemos tener instalado python en nuestro sistema.
Para instalarlo ejecutaremos el comando «pip install locustio», (debemos tener instalado pip en nuestro entorno de python).
Ejecutando el primer test
Debemos crear un fichero en python con un pequeño y fácil código para hacer los get y post que deseamos testear.
from locust import HttpLocust, TaskSet def index(l): l.client.get("/") class UserBehavior(TaskSet): tasks = {index: 2} def on_start(self): pass def on_stop(self): pass class WebsiteUser(HttpLocust): task_set = UserBehavior min_wait = 5000 max_wait = 9000
Por ejemplo si queremos saber cuantas visitas es capaz de aguantar la página principal de google.es, pondremos una / en la función index.
Guardaremos el fichero de código creado con el nombre «locustfile.py» y ejecutaremos el siguiente comando.
locust --host=http://google.es
Ahora abriremos un navegador y pondremos la siguiente dirección en la barra:
http://127.0.0.1:8089
Esto nos llevará a una web en la que debemos poner el número de usuarios que queremos simular que entran en nuestra web.

Una vez que le demos a Start, locust comenzará a insertar usuarios en nuestra web con el ratio que le hayamos puesto en la segunda casilla.
Empezaremos a ver gráficas y resultados como estos.

En la gráfica de resultados, podemos ver el tiempo de respuesta de nuestro servidor y el número de usuarios que realiza esa carga.
Aquí veremos claramente con cuantos usuarios y cuanto tiempo nuestra web empieza a tardar en responder.

Un dato muy importante también, es cuantas peticiones ha dejado de responder nuestro servidor.
Este dato puede ser 0 porque nuestro servidor, aunque tardando, a conseguido responder todas las peticiones que le han solicitado.

Y para terminar el porcentaje de fallos que hemos tenido y los usuarios por segundo.