Как заставить Class отвечать за создание большого количества примитивных байтов? - PullRequest
0 голосов
/ 17 мая 2019

Проблема:
Наше приложение (на Java с Vertx) занимает более 10 ГБ динамической памяти.Это создает утечку памяти в приложении.

Что я пробовал:
Чтобы проанализировать причину этого, я взял дамп кучи с помощью jmap и проанализировал с помощью jhat.Результат jhat просто показывает, что где-то сам байт занимает 8 ГБ памяти с миллионами экземпляров.Но каждый массив или коллекция внутренне использует байт.Я не использую байт непосредственно в моем проекте.

Нужна помощь в:
Пожалуйста, предложите мне способ отладки класса в моем коде, который отвечает за утечку памяти.Любой инструмент, который может показать иерархию вместе с количеством экземпляров.

1 Ответ

0 голосов
/ 20 мая 2019

Вы можете использовать Eclipse MAT для анализа и отслеживания «Пути к корням ГХ»: https://www.eclipse.org/mat/about/screenshots.php.

...