Considerações para testes de carga grande
Este tópico fornece dicas para a realização de testes de carga grande no Visual Studio Team System Test Edition. São discutidos os seguintes assuntos:
Escolha o padrão de carga adequado
Escolhendo o modelo de conexão apropriada
Taxa de amostra e coleta de dados
time de pensar
Resposta configuração objetivos de time para solicitações de teste da Web
Incluindo detalhes de intervalo para coletar dados percentil
Definir a porcentagem da nova propriedade de usuários
Ativar rastreamento SQL
Manter um número apropriado de computadores de agente
Escolha o padrão de carga adequado
Há três tipos de padrões de carga: constante, por etapa e baseado em meta.Para escolher o padrão de carga é apropriado para seu teste de carga, você deve compreender as vantagens de cada tipo.Para obter mais informações, consulte Sobre Padrão de Carga.
Constante |
Um padrão de carga constante é útil quando você deseja executar o teste de carga com a mesma carga de usuário por um longo período de time.Se você especificar uma carga alta de usuário com um padrão de carga constante, é recomendável que você também especificar um time de aquecimento para teste de carga.Quando você especifica um período de aquecimento, você evita pela sobrecarga o seu site por ter centenas de novas sessões de usuário atingindo o site ao mesmo time. |
Por Etapa |
Um padrão de carga de etapa é um dos padrões de carga mais comuns e úteis, pois permite monitorar o desempenho do sistema sistema autônomo incresistema autônomoes de carga de usuário.Monitorar seu sistema medida que aumenta a carga usuário permite que você determine o número de usuários que podem ter suporte com tempos de resposta aceitável ou por outro lado, o número de usuários em que desempenho torna-se inaceitável. |
Baseado em meta |
Um padrão de carga baseado em meta é semelhante a um padrão de carga de etapa geralmente está aumentando a carga usuário ao longo do time, mas permite que você especifique que a carga deve parar aumentando quando algum contador de desempenho atinge um determinado nível.Por exemplo, você pode usar um padrão de carga baseado em meta para continuar a aumentar a carga até que um de seus servidores de destino é 75 % ocupado e manter a carga estável. |
Se nenhum padrão de carga predefinidas atender às suas necessidades, também é possível implementar um plug-in de teste de carga personalizados que controla a carga usuário sistema autônomo execuções de teste de carga.Para obter mais informações, consulte Avançado teste de carga Tasks.
Escolhendo o modelo de conexão apropriada
Há dois tipos de modelo de conexão: conexão por usuário e o pool de conexão.Para escolher o modelo de conexão que é apropriado para seu teste de carga, você deve compreender as vantagens de cada tipo.
Conexão por usuário |
A conexão por modelo de usuário mais parecida simula o comportamento de um navegador real.Cada usuário virtual que esteja executando um teste da Web usa uma ou duas conexões para o servidor Web são dedicados a esse usuário virtual.A primeira conexão é estabelecida quando a primeira solicitação do teste da Web é emitida.Uma segunda conexão pode ser usada quando uma página contém mais de uma solicitação dependente; essas solicitações podem ser emitidas em paralelo usando as duas conexões.Essas mesmas conexões são reutilizadas para solicitações subseqüentes dentro do teste da Web e são fechadas quando o teste da Web acabou de ser executado. A desvantagem da conexão por usuário modelo é que o número de conexões mantidas abertas no computador agente pode ser tão alto quanto 2 vezes a carga de usuário e sistema autônomo recursos necessários para oferecer suporte a essa contagem alta conexão podem limitar a carga de usuário que pode ser acionada de um agente de teste de carga único. |
Pool de conexão |
O modelo de pool de conexão preserva os recursos no agente de teste de carga por compartilhar as conexões com o servidor Web entre vários usuários de teste Web virtual.No modelo de pool de conexão, o dimensionar do pool de conexão Especifica o número máximo de conexões para certificar-se entre o agente de teste de carga e o servidor Web.Se a carga usuário for maior do que o dimensionar do pool de conexão, testes da Web que estiver executando em nome de diferentes usuários virtual compartilharão uma conexão. Compartilhando uma conexão significa que um teste da Web pode aguardar antes de emitir uma solicitação quando outro teste Web estiver usando a conexão.O time médio que um teste Web aguarda antes de enviar uma solicitação for controlado pela carga de teste de desempenho contador Média time de espera da conexão.Esse número deve ser menor que o tempo médio de resposta para uma página.Se não estiver, o dimensionar do pool de conexão é provavelmente muito pequeno. |
Taxa de amostra e coleta de dados
escolher uma taxa de amostragem apropriado baseada no comprimento do seu teste de carga.Uma taxa de amostra pequena, por exemplo, cinco segundos, coleta mais dados para cada contador de desempenho do que uma taxa de amostra grande.Coletar grande quantidade de dados por longo período de time pode causar erros de espaço em disco.Testes de carga longo, você pode aumentar a taxa de amostragem para reduzir a quantidade de dados coletados.O número de contadores de desempenho também afeta o quanto os dados são coletados.Para computadores em teste, reduzindo o número de contadores reduzirão a quantidade de dados coletados.
Você deve testar para determinar a taxa de amostragem que funcionará melhor para seu determinado teste de carga.No entanto, a tabela a seguir fornece taxas de amostragem recomendado que você pode usar para iniciar.
Duração do teste de carga |
Taxa de amostra recomendado |
---|---|
<1 Hora |
5 segundos |
1 A 8 horas |
15 segundos |
8 - 24 Hours |
30 segundos |
>24 Horas |
60 segundos |
time de pensar
time de raciocínio para solicitações de teste da Web tem um efeito significativo no número de usuários que podem ter suporte com tempos de resposta razoável.Alterando tempos de reflexão de 2 segundos para 10 segundos será normalmente permitem simular 5 vezes tantos usuários.No entanto, se seu meta é simular usuários reais, você deve conjunto time de reflexão com base em como você acha que os usuários irão se comportar em seu Web site.Aumentar time de raciocínio e o número de usuários não necessariamente colocará fadiga adicional em seu servidor Web.Se o Web local é autenticado, o tipo de esquema usado afetará o desempenho.
Se você desabilitar os tempos de reflexão para um teste da Web, talvez você possa gerar um teste de carga com uma taxa de transferência mais alta em termos de solicitações por segundo.Se você desabilitar os tempos de reflexão, você também deve reduzir o número de usuários para um muito menor número de quando pensar vezes são ativados.Por exemplo, se você desabilitar tempos de reflexão e tente executar a 1.000 usuários, você provavelmente sobrecarregar o servidor de destino ou agente de teste de carga.
Para obter mais informações, consulte Sobre tempos de refelxão.
Resposta configuração objetivos de time para solicitações de teste da Web
Uma das propriedades de uma solicitação de teste da Web é o meta de time de resposta.Se você definir objetivos de time de resposta para solicitações seus teste da Web, quando o teste da Web está em execução em um teste de carga, analisador de teste de carga será relatam a porcentagem dos testes da Web para o qual o time de resposta não atendeu a meta.Por padrão, não há nenhuma resposta time metas definidas para solicitações da Web.
Para obter mais informações, consulte Como: conjunto objetivos de time resposta da página em um teste da Web.
Incluindo detalhes de intervalo para coletar dados percentil
As configurações de execução incluem uma propriedade chamada Armazenamento de detalhes de tempo.Se essa propriedade estiver ativada, o time necessário para executar cada teste individual, transação, e página durante o teste de carga será armazenada na carga Resultados de Teste repositório.Isso permite que dados percentil 90th e 95th a ser mostrado no analisador de teste de carga no Testes, Transações, and Páginas tabelas.
Por padrão, Armazenamento de detalhes de tempo desabilitado.Há dois motivos importantes para fazer isso.Primeiro, a quantidade de espaço é necessária a teste de carga resultados repositório para armazenar dados de detalhes de tempo pode ser muito grande, especialmente para longa teste de carga s.Além disso, o time para armazenar esses dados no repositório de resultados no participante do teste de carga é muito time porque esses dados são armazenados nos agentes de teste de carga até que o teste de carga tenha terminado a execução de teste de carga.
Se houver espaço em disco suficiente na carga repositório de resultados de teste, você pode ativar Armazenamento de detalhes de tempo para obter os dados percentil.Você tem duas opções para habilitar a Armazenamento de detalhes de tempo: StatisticsOnly and AllIndividualDetails.Com uma dessas opções, todos os testes individuais, páginas e as transações são atingiu o tempo e dados percentil são calculados a partir de dados de tempo individuais.Se você optar por StatisticsOnly, dados de tempo individuais é excluída do repositório depois que os dados percentil foi calculados.Excluir os dados reduz a quantidade de espaço necessário no repositório.Entretanto, se você deseja processar dados de detalhes de tempo diretamente, usando as ferramentas do SQL, escolher AllIndividualDetails para que os dados em detalhes o intervalo é salva no repositório.
Definir a porcentagem da nova propriedade de usuários
Cada cenário em um teste de carga tem uma propriedade nomeada Porcentagem de novos usuários.Esta propriedade afeta a maneira como o mecanismo de tempo de execução de teste de carga simula o armazenamento em cache seria realizado por um navegador da Web.O valor padrão de Porcentagem de novos usuários é 100.Isso significa que cada iteração de teste da Web que é executada em um teste de carga é tratada como um usuário time primeiro ao site da Web que não tem qualquer conteúdo do site no cache do navegador de visitas anteriores.Portanto, todas sistema autônomo solicitações no teste da Web, incluindo todas sistema autônomo solicitações dependentes, sistema autônomo imagens, são baixadas.
Observação: |
---|
Uma exceção é o caso em que o mesmo recurso armazenáveis em cache é solicitado mais de uma vez em um teste da Web. |
Se você for um site que tem um número significativo de usuários de retorno que é provável que imagens e outros conteúdos armazenáveis em cache armazenadas em cache localmente, em seguida, usando o valor padrão de 100 para de teste de cargaPorcentagem de novos usuários irá gerar mais solicitações de baixar que poderia ocorrer no uso do mundo real.Se você for um site que tem um número significativo de usuários de retorno de teste de carga, você deve estimar a porcentagem de visitas ao seu site da Web que são de usuários iniciantes do site e conjunto a porcentagem de novos usuários adequadamente.
Ativar rastreamento SQL
As configurações de execução incluem uma propriedade chamada Rastreamento SQL ativado.Esta propriedade permite que você ative o recurso de rastreamento do Microsoft SQL servidor para a duração de um teste de carga.Essa é uma alternativa para iniciar uma sessão separada do SQL criador de perfil, enquanto o teste de carga é executado para diagnosticar problemas de desempenho do SQL.Se a propriedade estiver habilitada, dados de rastreamento SQL serão exibidos no analisador de teste de carga.Você pode exibi-lo sobre o Tabelas página o Rastreamento SQL tabela.
Para ativar esse recurso, o usuário que está executando o teste de carga deve ter privilégios SQL necessários para executar o rastreamento SQL.Quando um teste de carga está sendo executado em um simuladores de carga, o usuário controlador deve ter os privilégios de SQL.Você também deve especificar um diretório, geralmente um compartilhamento de rede, onde o arquivo de dados de rastreamento será gravado.Após a conclusão do teste de carga, o arquivo de dados de rastreamento é importado para o repositório de teste de carga e associado com o teste de carga para que possam ser exibida mais tarde usando o analisador de teste de carga.
Para obter mais informações, consulte Sobre configurações de execução e Como: Integrar dados de rastreamento SQL.
Manter um número apropriado de computadores de agente
Se um computador agente tem mais de 75 % de utilização da CPU ou tiver menos de 10 % de memória física disponível, está sobrecarregado.Adicione agentes de mais para o simuladores de carga para garantir que o computador agente não se torna o gargalo em seu teste de carga.
Para obter mais informações, consulte Controladores, representantes e Rigs.
Consulte também
Tarefas
Solucionando problemas de testes de carga
Conceitos
Analisando o teste de carga Errors
Analisar as violações de regra de limite