Утечка памяти при работе с кварцем и ActiveMQ - PullRequest
0 голосов
/ 16 января 2019

У меня возникла проблема, которая вызывает OutOfMemoryError в моем приложении Java.

Приложение использует библиотеку планирования Quartz и имеет одного демона, который отправляет данные в очередь ActiveMQ.

Применение упрощенной работы:

  1. Демон запускается каждые 500 мс и читает данные из источника данных, демон состоит из нескольких bean-компонентов, и когда он завершает свою работу, он будет удален!
  2. Демон отправляет данные в очередь ActiveMQ.
  3. Демон использует соединение с очередью, которое инициализируется при запуске приложения, поэтому неправильное закрытие соединения не является проблемой для утечки!

При запуске Jprofiler в приложении Java я вижу увеличение размера кучи из-за создания в byte[] экземплярах, и я подумал, что это из-за сообщений, отправляемых в очередь, мой вопрос: кто-нибудь знает, есть ли какие-либо конфигурация, которую ActiveMQ использует для продолжения заполнения кучи?

Примечание: Я почти на 100% уверен, что утечка памяти вызвана ActiveMQ при отправке данных

...