Используя JMS, есть ли способ хранить сообщения на периодически отключенных клиентах и ​​пересылать их брокеру, когда сеть доступна? - PullRequest
2 голосов
/ 20 марта 2009

Я рассматриваю архитектуру, в которой у меня есть клиенты, которые периодически подключаются к сети. Я хотел бы хранить сообщения, созданные на этих клиентах, в очереди JMS, когда сеть недоступна, и пересылать их центральному посреднику сообщений, когда клиенты находятся в сети. (Пользователь имеет контроль над сетью, например, набор номера, поэтому это не прерывистое соединение, как с мобильным телефоном.)

Существуют ли реализации JMS, обеспечивающие эту функцию?

Ответы [ 2 ]

1 голос
/ 20 марта 2009

Вы можете встроить брокер activeMQ в свое приложение

http://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html

Затем, я полагаю (не проверял), что вы можете использовать функции ActiveMQ, которые позволяют отправлять сообщения через сеть брокеров, используя функцию обнаружения брокеров,

http://activemq.apache.org/clustering.html

или просто добавив серверную очередь потребителя очереди, а затем отправив запрос через других посредников через этого потребителя.

Надеюсь, это поможет.

0 голосов
/ 22 марта 2009

Очередь открытых сообщений Glassfish может быть встроена (или запущена в автономном режиме) в версию 4.4 (Поддержка возможности для брокера «в процессе» работать с любым клиентом.) Он очень легкий и будет поддерживать другие языки клиентов по протоколу STOMP в версии 4.4 - кроме Java и C. - https://mq.dev.java.net/4.4.html

...