Para subir o Locust usando o Docker Compose, siga os passos abaixo:
Instalação do Docker e Docker Compose: Certifique-se de ter o Docker e o Docker Compose instalados em seu sistema. Visite o site oficial do Docker e siga as instruções de instalação para o seu sistema operacional.
Criação do arquivo de script
Crie um arquivo script.py para definir o comportamento dos usuários simulados. Nesse arquivo, você precisará importar as classes FastHttpUser e Task do módulo locust e criar classes que herdem delas. Dentro dessas classes, você pode definir os diferentes comportamentos dos usuários e as tarefas que eles executarão.
Exemplo de um código que executa
from locust import task, constant
from locust.contrib.fasthttp import FastHttpUser
class TestCase(FastHttpUser):
wait_time = constant(.01)
weight = 1
@task(1)
def google(this):
this.client.get("https://www.google.com.br/search?q=locust", name="Google")
Criação do arquivo Dockerfile
Crie um arquivo chamado Dockerfile (sem extensão) e abra-o em um editor de texto. Adicione o seguinte conteúdo ao arquivo:
FROM locustio/locust
RUN pip install gevent
Criação do arquivo Docker Compose.yml
Crie um arquivo chamado docker-compose.yml e abra-o em um editor de texto. Adicione o seguinte conteúdo ao arquivo:
version: '3'
services:
master:
image: locust-master
build: ./
ports:
- '8089:8089'
volumes:
- ./:/mnt/locust
command: -f /mnt/locust/script.py --master -H http://master:8089
worker1:
image: locust-work
build: ./
volumes:
- ./:/mnt/locust
command: -f /mnt/locust/script.py --worker --master-host master
worker2:
image: locust-work
build: ./
volumes:
- ./:/mnt/locust
command: -f /mnt/locust/script.py --worker --master-host master
Neste arquivo definimos um cluster master que vai ficar responsável em mostrar a parte de host do locust e outro 2 workers para distribuir a carga para o sistema.
Execução
Abra um terminal e navegue até o diretório onde o arquivo docker-compose.yml está localizado. Execute o seguinte comando para iniciar o Locust:
docker-compose up
Isso iniciará o serviço Locust usando as configurações definidas no arquivo docker-compose.yml. A porta 8089 do contêiner será mapeada para a porta 8089 do seu sistema local, permitindo que você acesse a interface web do Locust.
Acesso à interface web: Abra um navegador da web e acesse http://localhost:8089. Você verá a interface web do Locust, onde poderá configurar o número de usuários virtuais a serem gerados e iniciar a simulação de carga.
Agora você pode usar o Locust em um ambiente Docker com o Docker Compose para realizar testes de carga e avaliar o desempenho do sistema. Lembre-se de ajustar as configurações de acordo com os requisitos do seu teste e interpretar corretamente os resultados obtidos.
Top comments (0)