Tomcat7 no docker - problema não respondendo

1

Temos um tomcat7 em execução no topo do contêiner docker (imagem docker oficial). Nas horas de ponta, depois de algum tempo, o tomcat trava e não consegue mais atender às requisições (muitos pedidos ficam presos e aguardam indefinidamente).

Aqui estão os detalhes do "gerenciador de aplicativos":

JVM

Memória livre: 627,21 MB Memória total: 1751,50 MB Memória máxima: 10923.00 MB

link

Encadeamentos máximos: 500 Contagem de encadeamentos atual: 500 Encadeamento atual ocupado: 500 Contagem de soquetes Viva em Keeped: 0 Tempo máximo de processamento: 871759 ms Tempo de processamento: 412926.78 s Contagem de solicitações: 3466023 Contagem de erros: 326 Bytes recebidos: 354.74 MB Bytes enviados: 1371.40 MB

Seção Conexões

Entradas X500 como esta:

S 166957 ms 0 KB 0 KB ip1 ip2 api.app.url POST / do1 HTTP / 1.1 ...

Alguma idéia de por que isso acontece?

P.S - Parece que a memória total é muito baixa (considerando que a memória livre é significativamente baixa) o que poderia causar isso?

    
por Urbanleg 30.04.2017 / 14:53

1 resposta

0

O aplicativo Java pode não ser executado como esperado no contêiner, como o Docker, e está relacionado principalmente à coleta de lixo que não fornece cpu quota suficiente com um monte de threads em execução, o que pode piorar.

Sugiro que você dê uma olhada no log de coleta de lixo e analise o GC completo, isso pode indicar uma pressão de memória e a utilização da CPU também.

Dê uma olhada neste artigo pode ajudar

    
por 31.05.2017 / 10:39