Утечка памяти в куче подписчиков Activemq - почему сообщения увеличиваются? - PullRequest
2 голосов
/ 21 ноября 2011

У меня есть консольное приложение, которое подключается к темам activemq. По каждой теме публикуется до 10 сообщений в секунду. Через некоторое время отслеживается, что память приложения увеличивается и когда вся память используется, приложение вылетает. Смотрите дамп ниже. Почему ActiveMQTopicSubsctiber использует так много кучи? Также это не видно, но ListEntries составляет около ~ 14 000 (что означает 14k сообщений).

http://imageshack.us/photo/my-images/404/amqmemoryproblem.png

Ответы [ 2 ]

1 голос
/ 21 ноября 2011

Несколько вещей для проверки:

  1. У вашего подписчика вы уверены, что сообщения из этой темы действительно потребляются?
  2. Каков ваш prefetchLimit , указанный как?
0 голосов
/ 28 ноября 2011

Если удержание сообщений в памяти продолжает оставаться проблемой, вам следует рассмотреть настройку ActiveMQ для использования файловых курсоров .Использование файловых курсоров заставляет ActiveMQ буферизовать сообщения на диск, а не хранить их в памяти.

...