когда брокер activemq заполняется сообщениями, или потребитель терпит неудачу, он прекращает принимать сообщения, как только достигнут определенный (настраиваемый) лимит. В Broker Networks этот эффект может разрушить весь кластер.
В настоящее время я использую конфигурацию по умолчанию для ограничения памяти и испытываю следующее поведение:
- потребитель отказывает или становится очень медленным (известная проблема)
- брокер A (тот, к которому подключается потребитель) заполняется и перестает принимать сообщения
- все остальные брокеры заполняются и перестают принимать сообщения
- кластер в основном не работает
если потребитель снова подключится к сети, он попытается повторно подключиться к одному из узлов кластера, но узлы не примут соединение, поскольку это приведет к созданию консультативных сообщений, которые не могут быть обработаны, поскольку брокер уже заполнен.
Как мне настроить пределы памяти таким образом, чтобы мои продуктивные пункты назначения были ограничены и заблокированы, но брокер все еще мог принимать рекомендации, чтобы мой потребитель мог возобновить работу?