Мониторинг Java-сборщика мусора и состояния памяти

Я использую некоторые приложения Rails на Jboss с JRuby.

Иногда сборщик мусора Java не может освободить память, а jvm использует всю доступную память.

Я пытаюсь создать пользовательскую метрику с помощью jstat, но не могу выяснить некоторые ценные статистические данные, которые позволяют мне обнаружить некоторые опасные условия и предпринять некоторые действия на сервере до сбоя Java.

Когда вся память на jvm используется, одно ядро ​​сервера остается на полную мощность, пытаясь собрать и освободить часть памяти.

У вас есть идея, как я могу определить, когда GC вот-вот выйдет из строя?

Благодарю.

1 ответ

Подключитесь к приложению с помощью Java Mission Control и выполните ручную запись или настройте триггер памяти. Руководство пользователя по управлению полетами находится по адресу http://docs.oracle.com/javacomponents/jmc-5-5/jmc-user-guide/index.html и http://docs.oracle.com/javacomponents/jmc-5-5/jfr-runtime-guide/index.html

Вы также можете использовать менеджер шаблонов для записи всех действий по сбору мусора. Таким образом, вы можете увидеть данные о распределении с точки зрения того, где код создает объекты.

Другие вопросы по тегам