Проблемы с использованием ActiveMQ + activemessaging gem в ruby - PullRequest
1 голос
/ 24 августа 2009

AMQ + Activemessaging запущен в приложении Rails.

У меня проблема с активным сообщением, которое не работает с сообщениями при их получении. Это решается, как только я перезагружаю клиент. Очевидно, он работает какое-то время, но не уверен, когда перестает вести себя странно.

Это приводит к потере сообщений при их чтении, клиент Stomp настраивается с помощью: ack => true подтверждает прием сообщения, но при отправке сообщения никакие данные недоступны.

Кто-нибудь сталкивается с подобной проблемой или использует альтернативу Activemessaging?

Есть ли у вас рабочий сценарий с использованием AMQ + Ruby?

Приветствия

Ответы [ 4 ]

2 голосов
/ 24 августа 2009

try: ack => 'client' или: ack => 'auto'.

: ack => true - недопустимая конфигурация, не знаю, что это будет делать - ничего хорошего.

Допустимыми являются значения 'client' и 'auto' (по умолчанию используется auto, клиент проверяет, чтобы клиент подтверждал каждое сообщение по одному и никогда не отправлял другое сообщение, пока последнее не было подтверждено).

Смотрите здесь, как опции ack работают в stomp: http://stomp.codehaus.org/Protocol

Приветствия

- Андрей Куклевич

1 голос
/ 29 октября 2010
Теперь снова работает.

Не для меня. Используя 0.7.1 и все еще имея ту же проблему. Время от времени AM отключается от подписанной очереди в AMQ.

1 голос
/ 04 июня 2010

Это старый поток, но я просто хотел упомянуть, что в активном геме обмена сообщениями была ошибка, при которой он не обновлял соединения - он работал для более старых версий Rails, но сломался где-то около 2.1. Теперь он снова работает.

0 голосов
/ 02 ноября 2009

Для всех пользователей ActiveMessaging: После долгих попыток выяснить проблему и попробовать разные сценарии и обходные пути, проблема оказалась в том, что соединение с MySQL истекло. По какой-то причине соединение не было восстановлено, когда сообщения появляются в очереди. Любой сталкивается с подобной ситуацией и каково было ее решение. Ура,

Константин Николау

...