1. O que é JConsole
O JCONSOLE foi introduzido desde o Java 5. O JConsole é um analisador de desempenho Java embutido que pode ser executado na linha de comando ou em um shell da GUI. Você pode usar facilmente o JCONSOLE (ou seu visualvm "próximo" de ponta) para monitorar o desempenho do aplicativo Java e o código de rastreamento em Java.
2. Como começar o JConsole
1. Se você iniciar a linha de comando, basta executar o JCONSOLE no caminho.
2. Se você começar a partir do shell da GUI, encontre o caminho de instalação do JDK, abra a pasta BIN e clique duas vezes no JCONSOLE.
Quando a ferramenta de análise aparece (dependendo da versão Java em execução e do número de programas Java em execução), uma caixa de diálogo pode parecer pedindo para inserir o URL de um processo para se conectar ou pode listar muitos processos Java locais diferentes (às vezes incluindo o próprio processo JConsole) para se conectar. Como mostrado na figura:
Se você deseja analisar esse programa, clique duas vezes no processo.
3. Como definir o programa Java a ser conectado e analisado pelo JCONSOLSE quando é executado
1 Programa local (em relação aos computadores que permitem o JCONSOLE), você pode estar conectado localmente sem definir parâmetros (o Java SE 6 não precisa ser definido no início e você ainda precisa definir parâmetros de tempo de execução antes - dCom.sun.management.jmxRemote)
2. Nenhuma conexão de autenticação (as seguintes configurações indicam: a porta de conexão é 8999 e pode ser conectada sem autenticação)
-Dcom.sun.management.jmxremote.port = 8999 /-dcom.sun.management.jmxremote.authenticate=false /-dcom.sun.management.jmxremote.ssl=false
3. Se os fatores de segurança forem levados em consideração, a autenticação é necessária e a conexão segura é necessária, ela também pode ser feita. Referência: http://download.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdenv
4. Como o JConsole se conecta ao programa Java Remote Machine (exemplo de exemplo)
1. Escreva um programa Java em execução simples, executado em uma determinada máquina como (192.168.0.181)
A cópia do código é a seguinte:
java -cp.
2. Outra máquina está conectada
Você pode usar o comando diretamente:
A cópia do código é a seguinte:
jconsole.exe 192.168.0.181:8999
Você também pode operar a conexão na interface JConsole já aberta -> Criar uma nova conexão -> Selecione um processo remoto -> Digite o IP do host remoto e o número da porta -> Clique em "Conexão", conforme mostrado na figura:
Então você entrará na interface de análise:
Análise de desempenho
Vamos falar sobre como analisar e como usar esses seis rótulos
• Visão geral: Exibe a visão geral das informações sobre a VM Java e os valores monitorados.
• Memória: exibir informações de uso de memória
• Tópico: exibir informações de uso do thread
• Classe: exibir informações de carregamento da classe
•*Resumo da VM:*Exibir informações Java VM
• MBeans: mostre mbeans.
Então você entrará na interface de análise:
Visão geral
A visão geral é muito simples e não há nada a dizer.
Memória
Isso é mais valioso, consulte o status da memória da heap, memória não-heap, alocação e uso de memória do pool de memória, bem como o número e o tempo da coleta de lixo por diferentes GCs. Você pode verificar manualmente as alterações de memória pelo GC.
É muito útil ao analisar problemas de memória Java para ajustar.
Os algoritmos e parâmetros da GC têm um impacto significativo no desempenho.
Aqui está um diagrama da Divisão de Gerações de Gerações de GC generativo sob o Java Hotspot VM LIXCECTOR de lixo:
Para GC, consulte: http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html
Fio
O canto inferior esquerdo mostra todas as roscas ativas (se houver muitos threads, você poderá inserir uma string na barra de filtro abaixo para filtrar as roscas que deseja observar). Clicar em um visor exibirá o nome, o status, o número de tempos de bloqueio e espera e as informações de empilhamento do thread.
O gráfico de estatísticas mostra o número de pico de threads (vermelho) e o thread atualmente ativo (azul).
Além disso, há um botão abaixo que "Deadlock detectado", que às vezes é útil.
tipo
Não há nada a dizer.
Resumo da VM
Não há nada a dizer, vamos dar uma olhada no status da memória, sistema operacional ...
MBean
Existem algumas operações extras disponíveis aqui.
Plugin
jconsole -pluginpath c: /java/jdk1.6.0_22/demo/management/jtop/jtop.jar
Você pode dizer rapidamente o que é.
Recomenda -se usar a versão atualizada do JConsole, ou seja, JVisualVM.
Em relação ao uso de jvisualvm, -> //www.vevb.com/article/77131.htm
Referências: