Pular para o conteúdo

Melhorando a performance de sua Java Virtual Machine

Dica publicada em Java / Miscelânea
André Luiz Lehmann clone do zealot
Hits: 15.901 Categoria: Java Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Melhorando a performance de sua Java Virtual Machine

Quantas vezes você está executando uma aplicação e a VM resolve que é a hora de passar o Full GC (Garbage Collector)? Você fica ali, esperando às vezes até um minuto até que o GC esteja feliz?

Seus problemas acabaram! Coletei os principais argumentos que podemos passar para o aplicativo afim de evitar esse stress com o Full GC.

Você deve adicionar estes argumentos quando for startar a sua aplicação. Exemplo:

$ java -verbose:gc -Xmx128m aplicacao

1° argumento: -Xms ou -Xmx
Serve para você especificar a quantidade de memória mínima e máxima, respectivamente.

2° argumento: -Xincgc
Maximiza o funcionamento do GC.

3° argumento: -Xloggc: logAplicacao.txt
Toda a informação sobre o funcionamento do GC é inserida neste arquivo. Bom para saber a quantas anda o consumo de memória da sua aplicação.

4° argumento: -verbose:gc
São extraídas mais informações sobre como está o funcionamento do GC sobre a VM.

5° argumento: -XX:+UseParallelGC
Este argumento habilita o funcionamento de um segundo GC. Este GC é uma thread daemon, assim como o GC normal, o que maximiza o funcionamento do GC.

6° argumento: -XX:+PrintGCDetails
Faz com que sejam extraídas mais informações sobre o funcionamento do GC.

7° argumento: -XX:+PrintGCTimeStamps
Faz com que também sejam extraídos os tempos de interações do GC na VM.

8° argumento: -XX:+PrintTenuringDistribution
Mostra a utilização, na memória, dos objetos coletados pelo GC.

9° argumento: -XX:+PrintHeapAtGC
Mostra informações do HEAD antes e depois da passagem do GC.

10° argumento: -XX:+UseParNewGC
Caso a sua máquina seja multiprocessador, esta opção faz com que o VM utilize toda a capacidade do multiprocessamento.

11° argumento: -XX:+AggressiveHeap
Faz com que o HEAP se torne agressivo, melhorando consideravelmente a performance da sua aplicação.

Essas são somente algumas das opções que a VM nos possibilita. Existem muitas outras, mas que eu ainda não utilizei, então não posso recomendar.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
Nenhuma dica encontrada.

Programa para visualizar graficamente sua rede de amizades no Orkut

Ubuntu 13.10 - Erro: após atualização, os menus da IDE Eclipse não são exibidos [Resolvido]

Treinamento gratuito online de Java

Lançando Java e Netbeans no Linux

Centralizando uma janela em Java

#1 Comentário enviado por cllaudiox em 24/09/2006 - 14:52h
muito boa a dica ... parabéns ..

Contribuir com comentário

Entre na sua conta para comentar.