Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Estamos tendo problemas quanto ao consumo de memória pelo Jboss de produção.

Setamos ele Configuramos com os seguintes parametros:
-Xms 16g 
-Xmx 16g 
-XX:MaxPermSize=1024M
Porém o consumo dele real está em 18GB.

Solução

...

Bloco de código
<subsystem xmlns="urn:jboss:domain:threads:1.1">
<bounded-queue-thread-pool name="http-pool">
<core-threads count="100"/>
<queue-length count="20"/>
<max-threads count="300"/>
<keepalive-time time="15" unit="seconds"/>
</bounded-queue-thread-pool>
</subsystem>

Está 100% correta, mas A configuração e o comportamento estão corretos, quanto maior o uso, mais alto será o consumo de memória, pois ele incrementa memória somente para as threads somando a memória necessária para gerenciar a aplicaçãoos espaços de memória são configurados separadamente, o valor máximo é definido pela soma das variáveis (como explicado acima) e o uso real vai variar conforme a carga de processamento atual.

Mais informações em: https://plumbr.eu/blog/memory-leaks/why-does-my-java-process-consume-more-memory-than-xmx

Acreditamos que assim como em outros clientes mais robustos esse aumento Portanto esse comportamento é normal, e é um comportamento da JVM para não impactar na memória destinada a aplicação principalmente em ambientes mais robustos onde este comportamento do gerenciamento de memória da JVM é mais visível, devido ao maior volume de requisições.