O JVisualVM é uma ferramenta de análise de desempenho fornecida pelo Sun. Como um apoio tão poderoso não pode ser poderoso? Ele vem com versões após o JDK6.0. Configure as variáveis de ambiente e digite "JVisualVM" durante a operação ou pesquise diretamente o diretório do BIN do diretório de instalação do JDK para executar. Se você estiver usando o JDK1.5 ou a versão anterior, precisará instalá -la separadamente.
Eu acho que outra coisa poderosa é que ele não precisa ser iniciado com um proxy (ou seja, se você deseja monitorar um programa, precisa usar o software de teste para executar o programa para facilitar o monitoramento de ferramentas de teste semelhantes, como o YourKit). É muito conveniente. Desde que seja executado no ambiente JDK, você pode ver e monitorar o status de execução após abrir esta ferramenta de teste. Obviamente, a premissa é executar no mesmo ambiente JDK.
Endereço: https://visualvm.dev.java.net/
conectar
1. O programa da máquina local pode ser ouvido diretamente
2. O programa de máquina remota precisa adicionar parâmetros da JVM
-Dcom.sun.management.jmxRemote = true
-Dcom.sun.management.jmxremote.port = 9090
-Dcom.sun.management.jmxremote.ssl = false
-Dcom.sun.management.jmxremote.authenticate = false
Nota: também verificado
nome do host i
Verifique se é um IP local. Se 127.0.0.1 ou o IP for um dos IPs múltiplos, os outros IPs forem inválidos e a conexão não será possível.
Aqui está um caso de análise, usando o JVisualVM para analisar o problema do tomcat:
http://blog.tty.nl/2010/09/03/using-visualvm-to-fix-live-tomcat-and-jvm-problems
Instalação do plug -in
Ferramentas-> Plugin-> O plugin disponível terá plugins que valem a pena instalar, como: VisualGC JConsole
Lista de plug -in: https://visualvm.dev.java.net/plugins.html
Nota: A configuração da porta fornecida acima é um pouco problemática, então por que não fazê -lo diretamente:
Para usar o VisualGC, você deve iniciar o agente JSTATD na máquina remota; caso contrário, o erro "não suportado para este JVM" será exibido. Haverá um problema de permissão ao iniciar o JSTATD, que precisa ser modificado da seguinte maneira:
nano /opt /sun-jdk- 1.6. 0.26 /jre/lib/security/java.policy
A cópia do código é a seguinte:
nano /opt/sun-jdk-1.6.0.26/jre/lib/security/java.policy
Adicione as seguintes linhas
A cópia do código é a seguinte:
Grant CodeBase "Arquivo: $ {java.home} /../ lib/tools.jar" {
permissão java.security.allpermission;
};
Em seguida, comece Jstatd e não feche
como:
Tópicos
Verifique o status de execução do thread, execute, pare, durma, espere e analise a lógica de executar em combinação com o programa real.
Para encontrar a pessoa suspeita, você pode descobrir qual tópico é no momento.
Veja este exemplo: http://blog.tty.nl/2010/09/03/using-visualvm-to-fix-live-tomcat-and-jvm-problems
Para usar e analisar o programa, você pode consultar este exemplo: http://www.baptiste-wicht.com/2010/07/profile-applications-java-visualvm