Maison> Java> javaDidacticiel> le corps du texte

Processus de dépannage de fuite de mémoire JVM

(*-*)浩
Libérer: 2019-09-24 15:41:53
avant
2767 Les gens l'ont consulté

Processus de dépannage de fuite de mémoire JVM

1. Interrogez le processus qui consomme le plus de CPU

jps Découvrez d'abord ces processus Java

commande top Vérifiez les processus Java qui consomment beaucoup de CPU

2 Trouvez le thread qui occupe le plus de mémoire

1. -o pcpu,pid, tid, time, tname, cmd

%CPU PID TID TIME TTY CMD 0.0 32060 32060 00:00:00 ? /data/java 0.0 32060 32061 00:00:00 ? /data/java
Copier après la connexion

Le format décimal du fil d'impression est au format hexadécimal (la colonne correspondant au TID) :

printf "%x\n" 32061 7d3d
Copier après la connexion

3. Interrogez la valeur correspondante dans les informations du fil jstack

[root@10-10-244-163 ~]# jstack 32060|grep 7d3d -C 10 at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:216) "Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007f6dc0108000 nid=0x7d41 in Object.wait() [0x00007f6da99cb000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:502) at java.lang.ref.Reference.tryHandlePending(Reference.java:191) - locked <0x00000000c08d0ab8> (a java.lang.ref.Reference$Lock) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153) "main" #1 prio=5 os_prio=0 tid=0x00007f6dc000d000 nid=0x7d3d runnable [0x00007f6dc9e1a000] java.lang.Thread.State: RUNNABLE at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409) at java.net.ServerSocket.implAccept(ServerSocket.java:545) at java.net.ServerSocket.accept(ServerSocket.java:513) at org.apache.catalina.core.StandardServer.await(StandardServer.java:453) at org.apache.catalina.startup.Catalina.await(Catalina.java:777) at org.apache.catalina.startup.Catalina.start(Catalina.java:723) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!