Não tenho certeza se você pode fazer isso com ab
.
Para isso, eu uso o JMeter para permitir a injeção de carga no servidor de uma maneira mais personalizável. Você pode tentar.
Eu sei que posso usar a opção "-c" em ab para simular um certo número de conexões simultâneas. Existe uma maneira em que eu poderia usar "ab" para simular 100 novos clientes a cada segundo visitando meu site ou obtendo um arquivo? Gostaria de saber como meu servidor se comportará com essa carga.
Não tenho certeza se você pode fazer isso com ab
.
Para isso, eu uso o JMeter para permitir a injeção de carga no servidor de uma maneira mais personalizável. Você pode tentar.
Eu também recomendaria olhar para jmeter
, pois os resultados obtidos de ab
geralmente não são muito úteis. A ferramenta é simples demais para ser capaz de criar uma carga de trabalho realista para o seu servidor. Às vezes é tudo o que você precisa (se você não está olhando para o servidor da Web tanto quanto o que ocorre em todo o sistema durante uma carga pesada, por exemplo), mas realmente não faz muita coisa.
Eu também gostaria de destacar que você não pode conseguir isso facilmente com ab
. O mais próximo que você pode conseguir é algo como:
for x in $(seq 1 10); do
ab -c 100 -n 100 http://localhost/ &
sleep 1
done > /tmp/abOutput.txt
Que dará início a uma nova ab
instância a cada segundo, informando para criar imediatamente 100 conexões de clientes.
Esta resposta é uma espécie de pisar fora de ab
colocando um pouco da lógica em bash
e a saída é mais difícil de ler, mas é melhor que nada. Qualquer coisa mais complicada do que isso e eu sugiro strongmente olhar para jMeter
.
Se você é um pouco familiarizado com o Python, talvez você possa experimentar o Locust . Com o Locust, você precisa criar um script Python contendo todas as URLs que precisa verificar. Você também pode iniciar solicitações POST e postar dados no servidor. Quando terminar, inicie a interface web da Locust (ou simplesmente use a interface de linha de comando) e especifique o número de usuários a serem simulados. A interface web apresenta atualizações em tempo real bem.