Como você sabe que número de visualizações de páginas por segundo é uma quantia aceitável para seu servidor?

2

A ferramenta AB do Apache nos permite testar nosso servidor para ver quantas páginas por segundo um servidor pode manipular. Os resultados obviamente variam de acordo com as especificações da configuração de hardware e software do servidor. Minha pergunta é: como você sabe quando os resultados do seu servidor estão muito baixos / podem ser melhorados? Ou são aceitáveis / otimizados?

    
por John Conde 08.11.2010 / 17:28

3 respostas

4
  • Se os resultados estiverem próximos da estimativa geral do cenário (pelo menos milhares de solicitações por segundo para pequenos arquivos estáticos, pelo menos centenas de solicitações por segundo para PHP dinâmico simples, talvez menos para conteúdo dinâmico pesado com bancos de dados e outras coisas) e o servidor ainda está se movimentando bem, então você está bem.

  • Também é importante que, durante o teste de carga, o servidor ainda tenha espaço para respirar. Se mal houver algum tempo de CPU ou memória extra, você terá grandes problemas durante picos repentinos de tráfego e / ou crescimento de seu site.

  • Confie nos seus instintos. Se você tiver apenas um pequeno banco de dados para o conteúdo e durante o benchmark, o servidor de banco de dados parece comer muita CPU, vá e verifique novamente tudo. O próprio servidor de banco de dados está configurado como OK? Todos os índices esperados estão no lugar? O site está executando algumas consultas SQL half-assed que podem ser otimizadas e / ou armazenadas em cache? Algo mais? Ou, se o seu servidor da Web parecer gastar muito tempo até mesmo exibindo conteúdo estático, verifique as configurações do servidor da Web.

E se acontecer de você comparar um site completamente lento, você saberá que há espaço para otimização. Certa vez, apresentei um site aparentemente simples em execução com um servidor de 8 núcleos, 16 GB de RAM e todo esse jazz. ab, siege e JMeter me deram cinco pedidos por segundo! Naquele momento, eu sabia que algo estava muito, muito mal. Ironicamente, foi um cache-plugin totalmente mal configurado acessando o memcached que estava errado. Depois de consertar que o site era cerca de 100 vezes mais rápido. : -)

    
por 08.11.2010 / 17:43
4

O benchmarking é um assunto tão complicado ...

Meus pontos use uma quantidade diferente de simultaneidade em seus testes

1-2-8-16-64-256-512-1024-2048

E envie muitas solicitações ... até

Você começa a ver os erros ... retornados pela AB ...

Então você começa a encontrar seus limites de seu aplicativo + servidor da Web.

Lembre-se também do seu RTT e Delay ..

Lembre-se de executar seus testes por um tempo para obter uma boa média.

Eu também devo observar isso.    Você pode facilmente usar toda a CPU no servidor com o seu teste .. do que o servidor realmente testando .. Portanto, fique de olho na CPU e memória em sua máquina de teste ..

Espero que ajude: D

    
por 08.11.2010 / 17:33
1

Na minha opinião, é sempre sobre o volume de usuários e sua experiência esperada / antecipada. Seu caso de uso variará, mas tenho certeza de que, se o Google começou a responder com rapidez, digamos que as pessoas da Expedia ficariam desapontadas. Então, em última análise, é tudo sobre como o seu sistema reage quando confrontado com um determinado volume de tráfego - e não podemos dizer-lhe esses dados, você precisa conhecer a si mesmo.

    
por 08.11.2010 / 17:35