У меня есть следующая ситуация, которая влияет на наш брокер ActiveMQ 5.8.Activemq STOMP: обнаружение и очистка мертвых незащищенных подписчиков
Несколько скриптов Perl на рабочей станции Windows, подключенных к ActiveMQ с использованием STOMP и подписанных (небезопасных) на различные темы. Ошибка питания на рабочей станции.
Используя веб-консоль, я вижу, что ActiveMQ все еще думает, что эти абоненты подключены в зависимости от количества показываемых потребителей и используемого хранилища сообщений с высоким временем. Я установил для управления потоком производства и не задал пределы памяти, поэтому, по-моему, я вижу, что ActiveMQ наматывает все сообщения на диск, потому что думает, что давно мертвые подписчики все еще подключены и могут в конечном итоге их прочитать. Прошло 30 дней, и ActiveMQ все еще не понимает, что эти подписчики больше не подключены.
Есть ли способ настроить ActiveMQ так, чтобы соединения подписчиков «нежить», подобные этим, в конечном итоге очищались автоматически?
Я прочитал ваше сообщение в блоге, основная часть которого заключается в том, что коннектор должен быть настроен. Likestomp: //0.0.0.0: 0? Transport.defaultHeartBeat = 5000,0 – kamorrissey
Я прервался, прежде чем заканчивать свой предыдущий комментарий. URI соединителя, такой как пример, приведенный для 'stomp: //0.0.0.0: 0? Transport.defaultHeartBeat = 5000,0', должен отключить соединение, которое простаивает более 5000 миллисекунд. Я собираюсь попробовать это. Если это сработает, это именно то решение, на которое я надеялся. – kamorrissey
Я попробовал рекомендацию выше, но она, похоже, не работала. Я изменил коннектор в моем 'activemq.xml' как' 'и перезапустил ActiveMQ. Затем я запустил скрипт Perl, который подписывается на некоторые подстановочные темы. Я говорю, что количество потребителей растет по соответствующим темам, как я ожидал. По словам веб-консоли, я получаю медленные потребительские рекомендации, и использование памяти растет. Но через 20 минут количество потребителей не упало, а использование моей памяти по-прежнему велико. –
kamorrissey