Teste de estresse do servidor e configuração para iniciantes?

1

Nossa cidade está tendo um evento muito público em breve (coleta de dados para locais públicos disponíveis na prefeitura) que exigiu que nossa empresa criasse um formulário para enviar currículos e alguns dados pessoais. Espera-se que cerca de 5 a 10 mil usuários enviem dados na primeira semana por causa da publicidade que o evento está recebendo e das experiências anteriores do nosso cliente.

Eu tive boas experiências usando o Amazon EC2 para pequenas aplicações, então estou planejando lançar uma instância especializada em entrada / saída, esperando entradas de dados massivas.

O aplicativo será executado no IIS + MySQL ou no Tomcat + MySQL no servidor Windows.

Eu realmente aprecio alguns pensamentos e sugestões para testar e configurar este servidor da Web para estresse e usuários concorrentes para evitar o tempo de inatividade e perda de conexões. Tenho pouca experiência em lidar com essa quantidade de usuários, por isso sou iniciante com esse tipo de ferramenta.

PROGRESSO:

  • Eu encontrei um bom tutorial inicial para o Jmeter no Vimeo ( link )
  • Eu também encontrei uma explicação útil sobre os resultados do teste em este blog

Na minha opinião, esses dois recursos facilitam a compreensão do jmeter além da documentação oficial.

    
por bruno077 19.01.2011 / 15:15

2 respostas

3

Como você deseja testar este aplicativo em toda a pilha, provavelmente desejará algo que possa preencher os formulários e o login, etc. Jmeter é bastante extenso a esse respeito.

O mais importante é certificar-se de enfatizar os vários aspectos do teste que atingirá a pilha completa, incluindo o backend SQL. Além disso, geralmente é bom certificar-se de que você está acessando muitas páginas diferentes se o aplicativo for construído dessa forma, para que você não esteja apenas comparando o cache dos sistemas. Usar um / b incorretamente para apenas carregar uma página estática repetidamente é, na maioria das vezes, uma perda de tempo, a menos que você se preocupe apenas com o desempenho do melhor cenário do Apache.

O processo geralmente é:

Preperação:

  • Certifique-se de que o teste de estresse vale o investimento de tempo
  • Desenvolva um teste de estresse extenso que testará a pilha inteira (ou seja, Jmeter). Se o tempo é limitado e você não pode fazer isso, então use sua equipe interfuncional (devs, dba, sysadmins, etc) melhor palpite quanto ao local onde o gargalo é
  • Certifique-se de ter um processo que monitore todos os recursos relevantes do sistema durante os testes

Execução:

  • Execute o teste de estresse
  • Analise os resultados para o gargalo
  • Corrigir o gargalo
  • Repetir

Como nota final, muitas vezes descobri que ter sistemas suficientes para testar o sistema é uma das partes difíceis - portanto, sua solução da Amazon parece boa para mim.

    
por 19.01.2011 / 16:06
1

ab do Apache é uma ferramenta de teste de estresse muito popular. Eu daria uma olhada nisso e veria se ela atende às suas necessidades.

Oreilly Respostas: Como testar a força usando AB

    
por 19.01.2011 / 15:35