1. Qu'est-ce que JConsole
Jconsole a été introduit depuis Java 5. JConsole est un analyseur de performances Java intégré qui peut être exécuté à partir de la ligne de commande ou dans une coque GUI. Vous pouvez facilement utiliser JConsole (ou, son "VisualVM)" près de relatif) haut de gamme pour surveiller les performances de l'application Java et le code de suivi de Java.
2. Comment démarrer JConsole
1. Si vous commencez à partir de la ligne de commande, exécutez simplement JConsole sur le chemin.
2. Si vous commencez à partir de la coque de GUI, trouvez le chemin d'installation JDK, ouvrez le dossier du bac et double-cliquez sur JConsole.
Lorsque l'outil d'analyse apparaît (en fonction de la version Java en cours d'exécution et du nombre de programmes Java en cours d'exécution), une boîte de dialogue peut sembler demander à entrer l'URL d'un processus pour se connecter, ou peut énumérer de nombreux processus Java locaux différents (y compris parfois le processus JConsole lui-même) pour se connecter. Comme indiqué sur la figure:
Si vous souhaitez analyser ce programme, double-cliquez sur le processus.
3. Comment définir le programme Java à connecter et analysé par Jconsolse lorsqu'il est exécuté
1. Programme local (par rapport aux ordinateurs qui permettent JConsole), vous pouvez être connecté à activé localement sans définir de paramètres (Java SE 6 n'a pas besoin d'être défini au début, et vous devez toujours définir des paramètres d'exécution avant - dcom.sun.management.jmxremote)
2. Aucune connexion d'authentification (les paramètres suivants indiquent: le port de connexion est 8999, et il peut être connecté sans authentification)
-Dcom.sun.management.jmxRemote.port = 8999 /-dcom.sun.management.jmxRemote.Authenticate=false /-dcom.sun.management.jmxremote.ssl=false
3. Si les facteurs de sécurité sont pris en compte, l'authentification est requise et une connexion sécurisée est requise, cela peut également être fait. Référence: http://download.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdenv
4. Comment JCOnSole se connecte au programme Java Machine distant (exemple d'exemple)
1. Écrivez un programme Java en cours d'exécution simple, exécutez sur une certaine machine comme (192.168.0.181)
La copie de code est la suivante:
Java -cp. -Dcom.sun.management.jmxRemote.port = 8999 -dcom.sun.managent.jmxRemote.Authenticate = false -dcom.sun.management.jmxRemote.ssl = false jconsolestrest
2. Une autre machine est connectée
Vous pouvez utiliser la commande directement:
La copie de code est la suivante:
jconsole.exe 192.168.0.181:899
Vous pouvez également faire fonctionner la connexion dans l'interface JConsole déjà ouverte -> Créer une nouvelle connexion -> Sélectionnez un processus distant -> Entrez l'IP et le numéro de port de l'hôte distant -> Cliquez sur "Connexion", comme indiqué sur la figure:
Ensuite, vous entrerez dans l'interface d'analyse:
Analyse des performances
Parlons de comment analyser et comment utiliser ces six étiquettes
• Présentation: affiche des informations sur la vue d'ensemble sur la machine virtuelle Java et les valeurs surveillées.
• Mémoire: afficher les informations d'utilisation de la mémoire
• Filetage: affichage des informations d'utilisation du thread
• Classe: afficher des informations de chargement de classe
• * Résumé VM: * Afficher les informations Java VM
• MBEANS: Afficher les mbeans.
Ensuite, vous entrerez dans l'interface d'analyse:
Aperçu
L'aperçu est très simple et il n'y a rien à dire. Examinons-le vous-même, mais il convient de mentionner que le clic droit sur l'image peut enregistrer des données dans le fichier CSV. Vous pouvez utiliser d'autres outils pour analyser ces données à l'avenir.
Mémoire
Ceci est plus précieux, voir l'état de la mémoire du tas, la mémoire non tas, l'allocation et l'utilisation de la mémoire globale du pool de mémoire, ainsi que le nombre et le temps de collecte des ordures par différents GC. Vous pouvez vérifier manuellement les modifications de la mémoire par GC.
Il est très utile lors de l'analyse des problèmes de mémoire Java pour le réglage. Vous devez apprendre le modèle de mémoire JVM, puis vous constaterez que chaque valeur ici a un sens.
Les algorithmes et paramètres de GC ont un impact significatif sur les performances. Faites attention au nombre de temps de collecte des ordures, de temps, ainsi que de GC partiel et de GC complet, ajustez les différents GC que vous utilisez et les paramètres sous chaque GC, puis observez dans cette vue pour obtenir de bonnes performances.
Voici un diagramme de la division des générations de générations de GC génératifs sous Java Hotspot VM Collector:
Pour GC, veuillez vous référer à: http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html
Fil
Le coin inférieur gauche affiche tous les threads actifs (s'il y a trop de threads, vous pouvez entrer une chaîne dans la barre de filtre ci-dessous pour filtrer les fils que vous souhaitez observer). En cliquant sur un écran affichera le nom, l'état, le nombre de temps de blocage et d'attente et la pile des informations du thread.
Le tableau des statistiques montre le nombre de filetages de pic (rouge) et le fil actuellement actif (bleu).
De plus, il y a un bouton en dessous de ce "blocage détecté", ce qui est parfois utile.
gentil
Il n'y a rien à dire.
Résumé de la VM
Il n'y a rien à dire, jetons un coup d'œil à l'état de la mémoire, système d'exploitation ...
Mbean
Il existe des opérations supplémentaires disponibles ici.
Plugin
jconsole -pluginpath c: /java/jdk1.6.0_22/demo/management/jtop/jtop.jar
Vous pouvez dire en un coup d'œil ce que c'est.
Il est recommandé d'utiliser la version améliorée de JConsole, c'est-à-dire JVisualVM.
Concernant l'utilisation de jvisualvm, -> //www.vevb.com/article/77131.htm
Références: