当前位置:网站首页>Jstat pour la commande JVM: voir les statistiques JVM
Jstat pour la commande JVM: voir les statistiques JVM
2022-07-07 05:59:00 【Zhang Junjie 1994】
Apprendre Shang Silicon Valley Song hongkang JVMDe l'initiation à la maîtrise Notes d'étude
Généralités
Syntaxe de base
Parmi euxvmidC'est le processus.idNo.,C'est - à - direjpsLe numéro avant vu après,Comme suit:
optionParamètres
-gc
Cénozoïque
S0CC'est la taille de la première zone de survie(Octets)
S1CC'est la taille de la deuxième zone de survie(Octets)
S0UEst la taille utilisée pour la première zone de survie(Octets)
S1UEst la taille utilisée pour la deuxième zone de survie(Octets)
EC- Oui.EdenTaille de l'espace(Octets)
EU- Oui.EdenTaille de l'espace utilisé(Octets)
Corrélation gériatrique
OCC'est la taille de l'âge(Octets)
OUC'est la taille utilisée par les anciens(Octets)
Domaine méthodologique(Méta - espace)Autres
MC Est la taille de la zone de méthode
MU Est la taille utilisée par la zone de méthode
CCSC Est la taille de l'espace de classe compressé
CCSU Est la taille utilisée pour compresser l'espace de classe
Autres
YGC Est du démarrage de l'application à l'échantillonnage young gcNombre de fois
YGCT C'est - à - dire depuis le début de l'application jusqu'à l'échantillonnage young gcÇa prend du temps(Secondes)
FGC Est du démarrage de l'application à l'échantillonnage full gcNombre de fois
FGCT Depuis le début de l'application jusqu'au moment de l'échantillonnage full gcLe temps écoulé(Secondes)
GCT Est du démarrage de l'application à l'échantillonnage gcDurée totale
intervalParamètres
Utilisé pour spécifier la période de production des statistiques,En millisecondes.C'est - à - dire:: Intervalle de requête
countParamètres
Utilisé pour spécifier le nombre total de requêtes
-tParamètres
Vous pouvez ajouter unTimestampColonnes,Afficher le temps d'exécution du programme.Unité:Secondes
Nous appliquonsjstat -gc -t 13152 1000 10,Ça représente1 Les secondes impriment 1D'accord,Total10D'accord,-t Pour imprimer TimestampDurée totale de fonctionnement,Les résultats sont les suivants:
La boîte rouge ci - dessus représente Timestamp, Et la boîte bleue représente le temps de collecte des ordures ,En secondes., Si vous soustrayez deux valeurs de la boîte rouge ,Supposons que cette valeur soitnum1, Ensuite, soustrayez les deux autres valeurs de la boîte bleue de la ligne correspondante ,Supposons que cette valeur soitnum2,Et puisnum2/num1, La différence qui en résulte est ce qui précède. GC Temps en pourcentage du temps d'exécution
Même si c'est plus compliqué , Mais après le déploiement du projet, vous devez utiliser la ligne de commande pour voir , Il n'y aura pas d'interface visuelle , Donc cette façon de faire
-hParamètres
Il est possible de,Affiche un en - tête après Combien de lignes de données sont sorties
Présentation
Démarrer le programme ci - dessus
Entrez la commande suivante
Loaded Est le nombre de classes chargées
Le premierBytes Est le nombre d'octets occupés par la classe chargée
Unloaded Est le nombre de classes déchargées
DeuxièmeBytes Est le nombre d'octets consommés par la classe déchargée
Time Est le temps de chargement de la classe
Les paramètres de la flèche sont intervalParamètres,
La flèche signifie1Imprimer une fois par seconde, Pour notre surveillance continue .Imprimera tout le temps, Ne pas imprimer tant que le programme n'est pas terminé .
Le paramètre de la flèche est le nombre d'impressions ,10 Ça veut dire qu'au total 10Une fois,Atteindre10 L'impression s'arrête après .
-tSignifie sortie Combien de temps s'est écoulé entre le début du programme et maintenant que vous tapez sur la commande ,En secondes
Timestamp C'est le moment
-h3 Cela signifie que l'en - tête de la table est sortie tous les trois enregistrements
compiler Est la méthode d'affichage compilée , La méthode compilée prend du temps , Méthodes de compilation échouées, etc
Imprimer la méthode compilée
s0c Survivants0Capacité régionale
s1c Survivants1Capacité régionale
sou Survivants0Capacité déjà utilisée par la zone
s1u Survivants1Capacité déjà utilisée par la zone
ec Capacité totale du parc Eden
eu Capacité déjà utilisée dans le parc Eden
oc C'est la somme de l'âge
ou C'est la capacité utilisée par les anciens
mc Est la capacité de la zone de méthode
mu Est la capacité utilisée par la zone de méthode
ccsc Est le total des classes de compression
ccsu Est la capacité d'utilisation de la classe de compression
ygc - Oui.young gc Paramètres qui se sont produits
tgct - Oui.young gcTemps écoulé
fgc- Oui.full gcParamètres pour
fgct - Oui.full gcTemps écoulé
gct Oui, en général.gcLe temps, TotalgcTemps écoulé=young gcTemps écoulé+full gcTemps écoulé
jstat:Comment vérifierOOMEt fuites de mémoire
En temps normal, vous pouvez utiliser des outils d'interface graphique pour voir , Mais dans un environnement de production réel , Ces outils d'interface graphique peuvent ne pas être disponibles , Ça ne peut être que pour jdkAutoportantejstat Outils de visualisation surveillance .
Démarre çamainMéthodes
Attention!, N'a pas été lancé lors de l'exécution de la commande ci - dessus oomAnomalie,Et derrière.Java La console de programme a lancé cette exception .
- Oui.gcRaisons
oom Expérience de dépannage :
Expérience:
Nous pouvons comparerJava Temps de démarrage du processus et total gcLe temps(gctColonnes), Ou l'intervalle entre les deux mesures et le total gc L'accroissement du temps (Mise en œuvregcCombien de temps ça a pris?), C'est parti. gc Proportion du temps d'exécution par rapport au temps d'exécution du programme .
Les données entre les deux cases rouges ci - dessus gctLa somme du temps Divisé par Les données entre les deux cases rouges ci - dessus TimestampLa somme du temps, Pour obtenir la proportion du temps consacré à la collecte des ordures par rapport au temps total consacré à l'exécution du programme
Si cette proportion dépasse 20%, Cela signifie que la pression actuelle du réacteur est élevée , Parce que le temps de recyclage des ordures est un peu plus long , Si cette proportion dépasse 90%C'est, Cela signifie que le programme est exécuté à 100% du temps 90 Le temps passé à ramasser les ordures , Ça veut dire qu'il n'y a pratiquement plus d'espace mémoire , Alors ça pourrait arriver à tout moment oomC'est anormal.
Avecjstat Identifier les fuites de mémoire
Supplément
No1 Step peut exécuter des commandes :jstat -gc -t 13152 1000 20
Regardez de temps en temps ou Paramètres, Si ouParamètres( Utilisation de la mémoire à l'ancienne ) De plus en plus , C'est une situation dans laquelle les objets qui ne peuvent pas être recyclés dans les temps anciens continuent de croître , Tu dois y réfléchir.,Pourquoigc Je n'ai pas nettoyé ces objets , Une fuite de mémoire est probable .
jstatd:Collecte d'informations sur l'hôte distant
Parce que les données que nous allons surveiller ne sont pas nécessairement locales , Beaucoup de données à surveiller sont en ligne linuxOui.,C'est le moment d'utiliserjstatd Cet outil est surveillé à distance .
Les ordresjstatdC'est unrmiServeur, Fonctionne comme un serveur mandataire ,Établir la communication entre l'ordinateur local et l'outil de surveillance à distance,jstatdLe serveur vaJava Les informations de l'application sont transmises à l'ordinateur distant .
边栏推荐
- Flinksql read / write PgSQL
- PowerPivot - DAX (function)
- On the difference between FPGA and ASIC
- Go language learning notes - Gorm use - Gorm processing errors | web framework gin (10)
- 驱动开发中platform设备驱动架构详解
- linear regression
- R language [logic control] [mathematical operation]
- MySQL-CentOS7通过YUM安装MySQL
- JVM命令之 jstack:打印JVM中线程快照
- Introduction to the extension implementation of SAP Spartacus checkout process
猜你喜欢
Hcip seventh operation
Dynamic memory management
10W word segmentation searches per second, the product manager raised another demand!!! (Collection)
毕业之后才知道的——知网查重原理以及降重举例
Introduction to yarn (one article is enough)
数字IC面试总结(大厂面试经验分享)
力扣102题:二叉树的层序遍历
话说SQLyog欺骗了我!
Three level menu data implementation, nested three-level menu data
JVM the truth you need to know
随机推荐
Industrial Finance 3.0: financial technology of "dredging blood vessels"
980. Different path III DFS
What is message queuing?
Pytorch builds neural network to predict temperature
上海字节面试问题及薪资福利
Three level menu data implementation, nested three-level menu data
从“跑分神器”到数据平台,鲁大师开启演进之路
深度聚类:将深度表示学习和聚类联合优化
What is make makefile cmake qmake and what is the difference?
目标检测中的BBox 回归损失函数-L2,smooth L1,IoU,GIoU,DIoU,CIoU,Focal-EIoU,Alpha-IoU,SIoU
老板总问我进展,是不信任我吗?(你觉得呢)
MySQL-CentOS7通过YUM安装MySQL
Message queuing: how to ensure that messages are not lost
Say sqlyog deceived me!
JVM命令之 jstack:打印JVM中线程快照
2pc of distributed transaction solution
[solved] record an error in easyexcel [when reading the XLS file, no error will be reported when reading the whole table, and an error will be reported when reading the specified sheet name]
产业金融3.0:“疏通血管”的金融科技
What are the common message queues?
Loss function and positive and negative sample allocation in target detection: retinanet and focal loss