Como você carrega testar seu aplicativo?

22

Qual é a maneira mais eficaz de carregar para carregar testar seu aplicativo? O ponto principal é determinar quantos usuários você poderia suportar ao mesmo tempo com o aplicativo ainda em execução a uma velocidade razoável.

Jacob Schoen
fonte

Respostas:

4

O software de teste de carga mais abrangente que encontrei é o HP LoadRunner (desculpe pelo link bit.ly, mas o link HP é horrível e não funciona corretamente). É muito flexível e você pode gerar muitos tipos diferentes de relatórios a partir dos testes de carga. Você também pode ter um grupo de máquinas trabalhando em conjunto para carregar o teste. Não que outras ferramentas sejam ruins, mas faz com que algo como o Apache JMeter pareça um brinquedo.

carson
fonte
Não há necessidade de encurtar o URL. Ele também leva o valor a partir do site você ligar para (se um bom site, ele deve obter o impacto classificação)
Aiden Sino
1
@Aiden: Os links não são seguidos de qualquer maneira.
Christian
5

httperf principalmente e também AB a ferramenta Apache Benchmarking

(e uma tonelada de instrumentação para capturar consultas duplicadas e falhas de cache.)

É simples, eficaz e pode gerar muito tráfego a partir de uma máquina quad-core + conectada ao seu servidor na Ethernet gigabit. Ele também tem coisas legais, como limitação de taxa.

Se você quiser ser realmente sofisticado, poderá gravar e reproduzir o tráfego HTTP com o enableperf.

Aiden Bell
fonte
Você pode usar a AB em outros servidores da web?
usar o seguinte comando
como você pode registrar o tráfego http com o initperf?
razenha
4

A Ferramenta de Análise de Capacidade da Web da Microsoft (WCAT) é declaradamente a ferramenta de escolha da equipe do IIS

mvark
fonte
3

Vou apresentar quatro conjuntos de critérios para você examinar as ferramentas, e existem muitos deles disponíveis nas áreas de código aberto e comercial para aplicativos de teste de desempenho.

  1. Irá exercer minhas interfaces no meu aplicativo? Existem muitas ferramentas gratuitas, mas com interface monolítica e podem não exercer totalmente o seu aplicativo. As ferramentas comerciais têm suporte a protocolo / interface mais amplo do que as de código aberto
  2. Os relatórios correspondem às minhas necessidades? Nada é mais frustrante do que executar um teste e depois passar dias tentando reunir resultados de alguma forma significativa para análise e determinar se você atendeu ou não aos seus requisitos. Mais uma vez, essa é uma área em que as ferramentas comerciais superam os obstáculos do código aberto.
  3. Minha equipe possui as habilidades técnicas para usar a ferramenta? Você não quer superar os obstáculos ou o processo de teste de desempenho, a análise e, em seguida, outro idioma / ferramenta para aprender ao mesmo tempo. Seja realista.
  4. Será executado na minha infraestrutura de teste? Verifique os requisitos. Se um SO e uma versão específicos forem anotados, use-os ou não a ferramenta. Menos coisas são mais frustrantes para o suporte à ferramenta quando alguém liga / envia um e-mail com um problema apenas para descobrir que os requisitos de instalação e operação foram ignorados.

Os números 1-3 são críticos. Perda de qualquer um desses três e você pode ter comprado a ferramenta comercial mais cara e contratado a empresa de consultoria mais cara para implantá-la para você - você não quer ser pego dirigindo pregos com a ponta de uma chave de fenda simplesmente porque seu chefe lhe disse que a pistola de pregos era uma ferramenta cara para a casa que você tinha que construir (Observação: as pistolas de pregos geralmente estão disponíveis para aluguel, assim como as ferramentas de teste comerciais)

James Pulley
fonte
2

O Grinder é uma estrutura de teste de carga de código aberto poderosa, flexível e com script. Ele é desenvolvido ativamente e possui uma curva de aprendizado relativamente rasa em comparação com algumas das outras opções.

JasonBirch
fonte
1

Depende de quão complexo é; se for muito complexo, você provavelmente precisará de algo mais envolvido, mas para um site dinâmico típico, usar um script que gera várias instâncias do wget que solicitam páginas-chave em seu site deve funcionar.

Thomas Bonini
fonte