Проблемы с использованием ActiveMQ + драгоценного камня activemessaging в рубине
-
19-09-2019 - |
Вопрос
У меня есть AMQ + Activemessaging, работающий в приложении Rails.
Я столкнулся с проблемой, когда activemessaging не обрабатывает сообщения после их получения.Это решено, как только я перезапущу клиент.Судя по всему, какое-то время это работает, но неизвестно, когда перестанет вести себя странно.
Это приводит к потере сообщений во время их чтения. Клиент Stomp настроен с использованием :ack => true, что подтверждает получение сообщения, однако при отправке сообщения ни один из данных не доступен.
Кто-нибудь сталкивается с подобной проблемой или использует альтернативу Activemessaging?
Есть ли у вас рабочий сценарий с использованием AMQ + Ruby?
Ваше здоровье,
Решение
Это старая тема, но я просто хотел упомянуть, что в геме активного обмена сообщениями была ошибка, из-за которой он не обновлял соединения - он работал для старых версий Rails, но сломался где-то около 2.1.Теперь он снова работает.
Другие советы
вместо этого попробуйте :ack=>'client' или :ack=>'auto'.
:ack=>true — неверная конфигурация, не знаю, что это даст — ничего хорошего.
Допустимые параметры: «клиент» и «авто» (авто — значение по умолчанию, клиент гарантирует, что клиент подтверждает каждое сообщение по одному и никогда не отправляет другое сообщение, пока не будет подтверждено последнее).
См. здесь, как параметры подтверждения работают в Stomp: http://stomp.codehaus.org/Протокол
Ваше здоровье,
-Андрей Куклевич
Теперь он снова работает.
Не для меня.Использую 0.7.1 и все еще имею ту же проблему.Время от времени AM отключается от подписанной очереди в AMQ.
Всем пользователям ActiveMessaging:Потратив много времени, пытаясь выяснить проблему и опробовав различные сценарии и обходные пути, проблема оказалась в том, что соединение с MySQL истекло.По какой-то причине соединение не восстановилось при появлении сообщений в очереди.Кто-нибудь сталкивался с подобной ситуацией и какой был выход.Ваше здоровье,
Константин Николау