Dans mon test JMeter, je constate que JMeter continue de charger les classes javascript_gen_cmd__xxx et que le test ne peut pas atteindre le débit que j’ai défini.
Lorsque je clique sur le bouton "Perform GC" dans JVisualVM, les classes sont déchargées et le débit atteint.
Donc, je pense que cela aiderait si je pouvais indiquer quand le GC devrait avoir lieu, Par exemple, lorsque le nombre total de classes chargées atteint un certain nombre.
J’ai essayé -XX: MetaspaceSize = 120M, mais cela n’a pas déclenché le déchargement de la classe lorsque l’utilisation du métaspace a atteint 120 Mo.
Réponses:
0 pour la réponse № 1Quelque chose comme -XX:MaxMetaspaceFreeRatio=30 -XX:MinMetaspaceFreeRatio=10
devrait provoquer son remplissage rapide et ainsi déclencher des GC de déchargement de classe.
Alternativement -XX:+ExplicitGCInvokesConcurrent -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses
et en utilisant CMS ou G1 et le tir System.gc()
via une minuterie pourrait aussi fonctionner.