Tomcat + Alocação contínua de memória  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
FernandoLima
JavaBaby

Membro desde: 19/07/2006 18:03:27
Mensagens: 84
Offline

Boa tarde pessoal,
Eu tenho uma aplicação rodando com JSF 1.2 + Hibernate + FireBird + Tomcat 6.0.16 configurado para usar 1 GB de memória.
A aplicação está rodando normal e com desenpenho bom, porém utilizando a ferramenta Lambda Probe para verificar o consumo de
recursos do computador obtive algumas informações que eu achei um pouco estranho:

Free: 38,99 MB
Total: 118,89 MB
Max: 1.016,12 MB
Current memory usage is 7,9%

O estranho é que na hora que eu acessei o Lambda Probe (que esta rodando no mesmo servidor que a aplicação) para extrair essas informações, só tinha eu conectado, mais ninguém. Ainda, utilizando o Lambda Probe, puder verificar que não havia sessões da minha aplicação abertas no servidor, era somente eu conectado utilizando o probe.
Eu estava achando que o Tomcat estava alocando recursos de acordo com o necessário para responder as necessidades da aplicação. Para tirar essa dúvida, eu conectei então na aplicação e realizei alguns procedimentos de inclusão, alteração e exclusão e utilizei o Lambda Probe para saber qual o "peso" dessa sessão no servidor, e ele me apresentou que a sessão da minha aplicação que estava aberta consumia 18kb de memória, dai eu comecei a achar estranho pra caramba, porque para atingir quase 120 mega de memória só com a aplicação seria necessário um número de acesso muito alto e isso com certeza não ocorreu, porque a aplicação é de pequeno porte, para no máximo 7 usuários.
Na configuração do JSF, todos os backingbeans estão com o escopo de request utilizando o tomahawk savestate, e o parâmetro
STATE_SAVING_METHOD está configurado propositalmente para server, dessa forma ficou um pouco mais rapida a resposta,
porque o estado fica serializado no servidor ao invéz do cliente. Até pensei que pudesse ser esse parâmetro que estivesse causando esse consumo, mas pelo que percebi não deve ser, porque a sessão da aplicação está consumindo 18kb só.
Eu ainda não obtive um Java Out Of Memory, mas se aplicação permanecer dessa forma acredito que isso venha a acontecer mesmo com 1 GB!

O que vocês acham que poderia estar acontecendo de errado para o Tomcat estar utilizando tanta memória sem ter aplicações com sessões abertas no servidor?

Qualquer sugestão é muito bem vinda!


Obrigado a todos

kdoigor
JavaGuru
[Avatar]

Membro desde: 07/12/2007 22:27:29
Mensagens: 241
Offline

vc usou o parametro Xmx-1024m ?


tudo é possível ao que crê !
www.igornunes.com
[WWW] [MSN]
alexandremlima
JavaChild
[Avatar]

Membro desde: 29/12/2003 09:01:59
Mensagens: 129
Localização: Salvador-BA
Offline

Veja se encontra algo de útil nessa mensagem.
FernandoLima
JavaBaby

Membro desde: 19/07/2006 18:03:27
Mensagens: 84
Offline

Alexandre valeu pela dica,
Eu não estou usando o cache de segundo nível do hibernate, porém, as configurações do C3P0 estão default. Acredito que isso possa ser a razão dos problemas! Agora vou dar um boa estudada nos links que você passou, depois posto aqui como ficou!


Muito obrigado !
FernandoLima
JavaBaby

Membro desde: 19/07/2006 18:03:27
Mensagens: 84
Offline

kdoigor, usei sim, mas pelo Tomcat Monitor, na guia Java e nos campos Initial memory pool e Maximum memory pool !
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team