Ir ao conteúdo

Posts recomendados

Postado

Pessoal, Boa Tarde!

Hoje minha JVM esta com 6GB de memoria Heap e sempre bate no topo, eu pensei em fazer um Tunning de Heap e deixa-la com 12GB, mas recebi a noticia de alguns amigos que se eu fizer isso terei problemas com meu GC então...

Gostaria de umas dicas para tentar melhorar o desempenho do meu GC, para que eu consiga diminuir o tamanho da minha memoria Heap e deixe o Garbage mais rápido.
Tem como?

Obs.: Procede o comentário sobre o tunning? 

Desde Já muito obrigado a todos!!!

  • Membro VIP
Postado

Qual o tempo para o GC?

 

Qual a configuração do hardware?

 

Não usei muito Java, mas pelo que vi realmente existe uma limitação quando se usa mais de 10GB. Aqui cita alguns testes com diferentes flags. Aqui tem um review quando se força ele usar várias threads.

 

Postado

Minha JVM tem 64Gb de memoria com 8 CPU.

esta com 6GB de Heap.

 

Meu monitoramento aparece para o GC-> 
Data e Hora        Colletion Time    Collection Count    Inatividade    Cobertura
15/03/2016 17:15:29    22 h 13 m    159 #            0 %        100 %

Postado
30 minutos atrás, Luiz Carlos Carvalho disse:

Minha JVM tem 64Gb de memoria com 8 CPU.

esta com 6GB de Heap.

 

Meu monitoramento aparece para o GC-> 
Data e Hora        Colletion Time    Collection Count    Inatividade    Cobertura
15/03/2016 17:15:29    22 h 13 m    159 #            0 %        100 %

 

Minha configuração de java esta assim:

JAVA_OPTS="$JAVA_OPTS -Xms6144m -Xmx6144m -XX:PermSize=512m -XX:MaxPermSize=2048m -Djava.net.preferIPv4Stack=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true"
JAVA_OPTS="$JAVA_OPTS -Djava.io.tmpdir=/data/portal_tmp"
JAVA_OPTS="$JAVA_OPTS -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=0"
JAVA_OPTS="$JAVA_OPTS -XX:MaxTenuringThreshold=0 -XX:+UseParNewGC -XX:ParallelGCThreads=16"
JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled"
JAVA_OPTS="$JAVA_OPTS -XX:+CMSCompactWhenClearAllSoftRefs"
JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSInitiatingOccupancyOnly"
JAVA_OPTS="$JAVA_OPTS -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSScavengeBeforeRemark"
JAVA_OPTS="$JAVA_OPTS -XX:+CMSConcurrentMTEnabled -XX:ParallelCMSThreads=2"
JAVA_OPTS="$JAVA_OPTS -XX:+ScavengeBeforeFullGC"
JAVA_OPTS="$JAVA_OPTS -XX:+DisableExplicitGC -XX:-UseBiasedLocking -XX:+BindGCTaskThreadsToCPUs"
JAVA_OPTS="$JAVA_OPTS -XX:+UseFastAccessorMethods"
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8" 

 

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!