Problema de monitoramento do Tomcat JMX com o Perm Gen

4

Eu tenho um problema com o monitoramento do jmx. nós monitoramos o perm gen de alguns jvms com jmx. mas de tempos em tempos o nome do mbean muda de "PS Perm Gen" para "Perm Gen" ou vice-versa. isso acontece com uma reinicialização do servidor tomcat, mas não a cada reinicialização.

a versão jvm é 1.5.0_16.

alguém já experimentou esse problema e talvez tenha uma solução?

    
por Christian 22.01.2010 / 08:58

1 resposta

7

Você está usando coletores de lixo diferentes. O nome da área de memória PermGen é diferente dependendo do coletor de lixo selecionado:

  • -XX:+UseParallelGC : PS PermGen
  • -XX:+UseConcMarkSweepGC : CMS PermGen
  • -XX:+UseSerialGC : PermGen

Parece que o Tomcat foi iniciado com o coletor serial (stop-the-world) ou o coletor paralelo.

Verifique quaisquer inconsistências nos scripts de inicialização ou nas configurações do ambiente.

Atualizar : as configurações do coletor de lixo e da memória são influenciadas pelo , o que significa que eles são auto-selecionados na inicialização com base nas características do computador em que a JVM está sendo executada. Não consigo encontrar nenhuma referência agora, mas a IIRC é baseada na arquitetura da CPU e na memória total disponível.

Eu sugiro que você especifique um dos garbage collectors nos seus scripts de inicialização. Dependendo do seu aplicativo, pode não ser bom ter um coletor de lixo aleatório escolhido.

    
por 01.02.2010 / 23:45