O Tomcat desacelera exatamente a cada 30 minutos

1

Começamos a perceber um padrão muito estranho em nossa página da web. Exatamente a cada 30 minutos, estamos vendo uma grande queda nos pedidos em nosso servidor. Passamos de cerca de 2.000 solicitações por minuto para 500 a 800 solicitações por minuto. Nosso site desacelera completamente e leva quase um minuto para abrir. O padrão é mostrado no gráfico a seguir (extraído do probe):

link

Como você pode ver exatamente ao mesmo tempo, temos uma queda nos pedidos por cerca de 3 minutos, seguidos por um grande número de solicitações. Você também pode perceber um aumento nos erros quando isso acontece. Percebemos esse padrão nos últimos dois dias e não temos ideia do que poderia ser. Nós já aumentamos o uso de memória para o tomcat sem sucesso em parar este problema.

Todos os sites que estão sendo executados no tomcat apresentam uma grande lentidão, não apenas o site principal. Além disso, nosso servidor não vê alterações no desempenho, por isso temos a certeza de que nosso servidor não é o gargalo.

Qualquer ajuda ou idéias sobre o que isso poderia ser será muito apreciado.

Obrigado!

    
por Mauricio Avalos Martinez 17.05.2012 / 20:13

1 resposta

3

Você verificou sua política de coletor de lixo? Apenas aumentar a memória não é uma boa idéia, você deve fazer seus gráficos se comportarem com aumento e diminuição contínuos. Quando você tem uma grande quantidade de memória alocada, você demora mais tempo para esvaziar.

Veja isto: JBoss - Capítulo 9. Melhores práticas

Tamanho da pilha O tamanho da pilha é uma consideração importante para a coleta de lixo. Ter um heap desnecessariamente grande pode parar a JVM por segundos para executar a coleta de lixo. Tamanhos de heap pequenos também não são recomendados, porque eles colocam uma pressão desnecessária no sistema de coleta de lixo.

    
por 17.05.2012 / 20:27