Какое решение я должен использовать для этого WebApp с WebSockets.ActiveMQ?

StackOverflow https://stackoverflow.com/questions/5022486

  •  14-11-2019
  •  | 
  •  

Вопрос

В настоящее время я в середине разработки webapplication, который нуждается в подключении WebStocket для получения уведомлений о событиях с сервера.

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

Я думал, что ActiveMQ может, вероятно, поддержит эту модель, используя различные очереди для каждой группы клиентов.Также было бы относительно легко выдвигать события для ActiveMQ, используя STOMP, а затем использовать STOP-Over-WebSockets для клиентов.

Проблема, которую я вижу, это то, что сообщения не должны потребляться только одним клиентом, но распространяются со всеми клиентами, подключенными к очереди.

Также очередь не должна храниться.Если клиент не подключен, когда событие генерируется, то он никогда не получит его.

Я не знаю так много Activemq, поэтому я не уверен, что возможно, возможно, или если есть еще одно простое решение, которое можно использовать вместо того, чтобы написать свой собственный сервер сообщений.

Спасибо

Это было полезно?

Решение

ActiveMQ 5.4.1 supports WebSockets natively (just like Stomp, JMS, etc.). There is the concept of queues (you mentioned these), but also of topics.

In a queue, a single message will be received by exactly one consumer, in a topic it goes to all the subscribers. See: http://activemq.apache.org/how-does-a-queue-compare-to-a-topic.html

There are some Stomp-WebSocket JS libraries floating around. Kaazing has a bundle that includes ActiveMQ and supports JMS API/Stomp protocol over WebSockets with support for older browsers, different client technologies, and Cross-Site security.

Другие советы

Look at Pusher, otherwise you'll need something that supports topic based pub/sub. You could look at Redis or RabbitMQ

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top