Использование хранилища брокера ActiveMQ - PullRequest
0 голосов
/ 04 октября 2018

У меня есть 3 брокера ActiveMQ, из трех один брокер столкнулся с проблемой, которая говорит, что постоянное хранилище заполнено.

Пример ошибки:

INFO |Использование (по умолчанию: хранилище: очередь: //foo.bar: хранилище )centUsage = 99%, использование = 537210471, лимит = 536870912, процентUsageMinDelta = 1%; Родитель: Использование (по умолчанию: хранилище )centUsage = 100%, использование = 537210471, limit = 536870912, процентUsageMinDelta = 1%: постоянное хранилище заполнено, 100% из 536870912. Остановка производителя (ID: AKUNTAMU-1-31754-1388571228628-1: 1: 1: 1) для предотвращения затопления очереди: // foo.бар.См. http://activemq.apache.org/producer-flow-control.html для получения дополнительной информации (блокировка для: 155 с)

Я установил предел storeUsage как 100 ГБ для постоянных сообщений, но когда я иду и проверяю использование диска kahadb, это больше, чем 100 ГБ(это 190Gb).Насколько я понимаю, папка kahadb содержит как постоянные сообщения, так и файлы журналов журнала.

Вопрос: 1) Можем ли мы запросить kahadb, чтобы узнать, какая очередь занимает место?2) Как внутри папки kahadb мы разделяем пространство, занимаемое сообщениями и другими файлами базы данных.потому что все данные * .log файлы.3) для двух других брокеров на веб-консоли activemq использованный предел хранилища отображается как 0%, что приводит к путанице в этой части.Так как же мне проверить, действительно ли он равен нулю у двух других брокеров?

Заранее спасибо.

1 Ответ

0 голосов
/ 04 октября 2018

Всякий раз, когда мы настраиваем ActiveMQ, мы указываем, сколько места на диске должно использовать MQ,

В настройках есть 3 параметра

  • Использование памяти
  • Хранение в хранилище
  • Временное использование

Из которого TempUsage является максимальной памятью, которую MQ может использовать для хранения непостоянных сообщений, вам, скорее всего, следует установить это значениедо 50 ГБ (что составляет 536870912 байт).Посмотрите на этот ответ о том, как найти это значение https://stackoverflow.com/a/27549226/2551236

Я не видел, чтобы этот предел был нарушен, в очереди нет ни одного потребителя, ни какого-нибудь медленного?В любом случае, если вы хотите увеличить лимит, вы можете настроить свой файл activemq.xml, как упомянуто в ответе выше.

Надеюсь, это поможет!

Удачи!

...