Le suivi des performances des outils de traitement des défauts de base

  Dans le répertoire bin JDK, il existe une variété de petits outils pour le débogage de soutien, le suivi, compiler et exécuter d'autres fonctions.

root @ root: / usr / lib / jvm / java-8-openjdk-amd64 / bin # ls 
appletviewer HSDB jarsigner javadoc java-rmi.cgi JDB jinfo JPS jstack keytool pack200 rmid serialver unpack200 xjc 
clhsdb idlj java javah jcmd jdeps JJS jrunscript jstat native2ascii policytool rmiregistry servertool wsgen 
extcheck pot javac javap jconsole jhat jmap jsadebugd jstatd orbd rmic schemagen tnameserv wsimport

1.jps: outil d'état de processus VM

  Vous pouvez lister les machines virtuelles en cours d'exécution des processus et affiche la machine virtuelle exécute la classe principale (classe principale, la fonction principale () où la classe), ainsi que le nom d'une machine virtuelle locale ces processus ID unique (LVMID.Local Virtual Machine Identifier)

root @: ~ $ de JPS 
utilisation: JPS [-help] 
       JPS [-q] [-mlvV] [<hostid>] 

Définitions: 
    <hostid>: <nom d' hôte> [: <port>]

  root @: / home / dev # JPS -l
  1505 * .jar
  1507 * .jar

JPS paramètres d'option: 
-q: sortie uniquement LVMID, omis le nom de la classe principale de
-m: transmis à la classe principale sortie processus principal de la machine virtuelle démarre () des paramètres de fonction
-l: nom complet de la sortie de la classe de maître, si le processus est exécuté paquet de pot, le chemin de sortie JAR
JVM paramètres de processus de machine virtuelle sortie commence: -v

2.jmap: Java outils d'imagerie mémoire

   Pour l'instantané de vidage tas brut.

L'utilisation: 
    la jmap [Option] <PID> 

Option:
  -dump: vidage de tas vert instantané -dump: [Live] = le format B, fichier = <nom de fichier> <PID>
-heap: tas java Afficher les détails

  root @ dev03: / home / dev # jmap -dump: format = b, file = heapdump 30138
  tas dumping / home / wuh151 / heapdump ...
   Heap fichier de vidage créé

  root @: / home / dev # jmap -heap 30138
  Attachement à l' ID de processus 30138, s'il vous plaît patienter ...
  Debugger attaché avec succès.
  Compilateur serveur détecté.
  JVM version est 25.242-B08

  en utilisant l' affectation de l' objet thread-local.
  GC parallèle avec 8 fil (s)

  Heap Configuration:  

  MinHeapFreeRatio = 0 ## correspond JVM démarrage paramètres -XX: ralenti minimum MinHeapFreeRatio réglage du coefficient de JVM (par défaut 40)
  MaxHeapFreeRatio ## = 100 correspondant aux paramètres JVM de démarrage -XX: rapport de ralenti maximum disposé pile JVM MaxHeapFreeRatio (par défaut 70)
  maxHeapSize = 1073741824 ( 1024.0MB) ## correspondant au début JVM paramètres -XX: maxHeapSize = définir la taille maximale du tas JVM
  NewSize = 178782208 (170.5MB) ## correspondant au début de paramètres JVM -XX: NewSize = disposé JVM pile « nouvelle génération » taille par défaut
  MaxNewSize = 357564416 (341.0MB) ## correspondant au début de paramètres JVM -XX: MaxNewSize = disposé JVM pile 'nouvelle génération' taille maximale
  OldSize = 358088704 (de 341.5MB) ## correspondant au début des paramètres JVM -XX: OldSize = <value>: set tas JVM taille « ancienne génération »
  NewRatio = 2 ## correspondant au début JVM paramètres -XX: NewRatio =: « nouvelle génération » et le rapport de taille « ancienne génération »
  SurvivorRatio = 8 ## correspondant aux paramètres JVM de démarrage -XX: SurvivorRatio = Eden disposé dans la zone de taille zone jeune génération Survivor rapport
  MetaspaceSize = 1073741824 (1024.0MB)
  CompressedClassSpaceSize = 268435456 (256.0MB)
  MaxMetaspaceSize = 2147483648 (2048.0MB)
  G1HeapRegionSize = 0 (0.0MB)

 

 

3.jstack: outil de trace pile Java

       Le temps pour le thread en cours pour générer un instantané de la machine virtuelle. Le fil est un instantané de la méthode actuelle de collection machines virtuelles chaque pile de fil d'exécution, instantané fil de génération objectif est généralement de localiser le fil apparaît longue pause.

  

Comptez le nombre de threads à utiliser: 
root @ dev03: / Accueil / dev # 2791 jstack le -l | grep 'java.lang.Thread.State' | WC -L 48

Détection des blocages:

  Première étape: Voir occupe processus cpu haut en
  haut
  Étape deux: Vérifiez occupent threading haut cpu
  haut -H -p 17850
  Troisième étape: Convertir le TID
  printf « le% de X- \ le n » 17880
  45d8
  Quatrième étape: Localisez le fil d'utilisation cpu
  jstack 17850 | grep 45d8 -A 30

 

4.jstat: Virtual Statistiques machine Monitoring Tool

  Divers moniteur d'état de fonctionnement des machines virtuelles.

Utilisation: jstat -help | -options 
       jstat - <l'option> [-t] [-h <lignes>] <Vmid> [<interval> [<count>]] 

comptage intervalle paramètres représente le nombre de fois que l'intervalle de requête et, si l'argument est omis, Description seulement vérifier une fois
l'option:
  le chargement de classe moniteur -class, la quantité de déchargement, l' espace total de charge de classe et le temps passé
-gc surveillance de l' état tas java
-gcutil -gc avec essentiellement la même, la sortie des principales préoccupations a été utilisé et quel est le pourcentage de l'espace total
. ..

  root @: / home / dev # jstat -gcutil 25791
  S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
  97,84 0,00 61,84 77,63 97,22 95,68 338 58,808 2 60,595 1,787

  S0: 0 Zone survivant rapport actuellement utilisé

  S1: zone actuellement utilisé dans une proportion survivante 1

  E: Zone Eden utilisant une proportionnel

  O: la proportion des années de plus

  M: rapport de surface en utilisant des métadonnées

  CCS: Utilisation taux de compression

  YGC: le nombre de la jeune génération de recyclage des ordures

  YGCT: la jeune génération du temps de collecte des ordures

  FGC: le nombre d'années l'ancienne collecte des ordures

  FGCT: vieux temps est la collecte des ordures

  GCT: Temps total de la collecte des ordures

 

       

Je suppose que tu aimes

Origine www.cnblogs.com/ryjJava/p/12618566.html
conseillé
Classement