Melhorando a performance de sua Java Virtual Machine

Publicado por André Luiz Lehmann em 19/03/2005

[ Hits: 15.295 ]

 


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.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Mono suporta Java

Centralizando uma janela em Java

Eclipse Helios: Resolvendo problemas com o proxy

Treinamento gratuito online de Java

Java :: Squirrel-SQL Client

  

Comentários
[1] Comentário enviado por cllaudiox em 24/09/2006 - 14:52h

muito boa a dica ... parabéns ..



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts