Qu'est-ce que les Métadonnées GC Seuil et comment puis-je régler ça?
Dans une application, j'ai le texte suivant -verbose:gc
[GC (Metadata GC Threshold) 8530310K->2065630K(31574016K), 0.3831399 secs]
[Full GC (Metadata GC Threshold) 2065630K->2053217K(31574016K), 3.5927870 secs]
[GC (Metadata GC Threshold) 8061486K->2076192K(31574016K), 0.0096316 secs]
[Full GC (Metadata GC Threshold) 2076192K->2055722K(31574016K), 0.9376524 secs]
[GC (Metadata GC Threshold) 8765230K->2100440K(31574016K), 0.0150190 secs]
[Full GC (Metadata GC Threshold) 2100440K->2077052K(31574016K), 4.1662779 secs]
Qu'est-ce que ce "Métadonnées GC seuil" et comment puis-je réduire. Remarque: alors que la GC passe un long temps à nettoyer, il ne fait nettoyer beaucoup, c'est à dire qu'elle serait mieux si elle n'a pas fait cela.
Vous devez vous connecter pour publier un commentaire.
Le message de journal raconte que GC a été causé par Metaspace échec d'allocation.
Metaspaces tenir les métadonnées de la classe. Ils sont apparus en Java 8 pour remplacer PermGen.
Voici certaines options pour régler Metaspaces.
Vous pouvez définir une ou plusieurs des options suivantes:
-XX:MetaspaceSize=100M
Définit la taille de la répartition de la classe de métadonnées de l'espace qui va déclencher la collecte des ordures la première fois qu'il est dépassé;-XX:InitialBootClassLoaderMetaspaceSize=32M
à l'augmentation de la classe boot loader Metaspace;-XX:MinMetaspaceFreeRatio=50
de faire Metaspaces croître plus agressively;-XX:MaxMetaspaceFreeRatio=80
pour réduire le risque de Metaspaces rétrécissement;-XX:MinMetaspaceExpansion=4M
le minimum de la taille par lequel un Metaspace est exanded;-XX:MaxMetaspaceExpansion=16M
la taille maximale pour développer un Metaspace sans Full GC.MetaspaceSize
aidé.Alors qu'il est déjà accepté de répondre, je voulais mentionner qu'il y a aussi :
Également de ici,
Il y a une liste des options disponibles dans ce post.