2012-03-03 5 views
0

Мы используем AMQ 5.4.2 Брокер и NMS.ActiveMQ 1.5.0 с C#. Работает очень хорошо, как и Java-стек, к которому я в основном привык. Тем не менее, примерно через 12 часов происходит постоянная задержка между отправкой сообщения в очередь и получением от него совершенно доступного и незанятого потребителя. Иногда проходит до 30 секунд. Исправление заключается в том, чтобы перезапустить брокера или потребительские приложения. Таким образом, кажется, что связи каким-то образом разрушаются с точки зрения быстроты реагирования. В настоящее время это очень легко загруженная система, но это все изменится :)Должен ли я заставлять AMQ NMS повторно подключаться через несколько часов?

Так что мой вопрос ... для NMS, как долго я должен поддерживать связь «подключен» и должен ли я заново подключиться .. скажем каждые 4 часа , Я понимаю, что этого не требуется, но я готов сделать это, если другие сочтут это необходимым.

ответ

1

Я бы рекомендовал вам обновить версию v1.5.0 от NMS.ActiveMQ до последней версии v1.5.3, которая содержит некоторые исправления утечек потоков в мониторе неактивности, который проверяет сброшенные соединения сокетов. Со временем эти утечки могут быть тем, что замедляет работу для вас, поэтому безопасная ставка на обновление поможет. Возможно, есть другие вещи, замедляющие вас, например, ваш брокер, приближающийся к своим ограничениям памяти и т. Д., Но всегда лучше сначала попробовать простейшее исправление, а затем работать оттуда.

+0

Я хотел сказать, что мы используем 1.4.1. Но сделанный пункт, я повторю тестирование с более новой версией –