在生产中使用消息队列作为websocket服务器(而不是Java EE@ServerEndpoint)是一个好主意吗?

在生产中使用消息队列作为websocket服务器(而不是Java EE@ServerEndpoint)是一个好主意吗?,websocket,message-queue,Websocket,Message Queue,在生产中使用消息队列作为websocket服务器(而不是Java EE@ServerEndpoint)是一个好主意吗 它将建立一个与JS客户端的松散耦合,并可能减少应用程序的负载,但是否存在主要缺点?是否应该通过web公开MQ?可以从java web应用程序中向websocket客户端发送消息,而无需消息队列的帮助。只要您不需要消息队列必须提供的附加功能(QoS 1/2、保留消息、最后遗嘱和测试等),这是一个足够好的解决方案。有关使用mq的更多好处,请参见示例:)这里的上下文太少,无法了解您在做

在生产中使用消息队列作为websocket服务器(而不是Java EE@ServerEndpoint)是一个好主意吗


它将建立一个与JS客户端的松散耦合,并可能减少应用程序的负载,但是否存在主要缺点?是否应该通过web公开MQ?

可以从java web应用程序中向websocket客户端发送消息,而无需消息队列的帮助。只要您不需要消息队列必须提供的附加功能(QoS 1/2、保留消息、最后遗嘱和测试等),这是一个足够好的解决方案。有关使用mq的更多好处,请参见示例:)

这里的上下文太少,无法了解您在做什么,以什么样的规模,以什么样的总体要求,甚至就这是否是一个合适的架构方向提供意见。我不这么认为。问题是在什么情况下使用mq技术将websocket消息传递给JS客户端是个好主意。它的可伸缩性更好吗?不是慢一点吗?您会将mq用于具有数千或更多并发用户的生产系统吗?那么:你为什么要这样做?谢谢。如果没有一个真正好的理由,我不会使用MQ,那就是需要一个MQ,而且你没有描述任何东西表明需要一个MQ,或者说它对手头的任务有用。所以,如果您只想得到一个通用的答案,那么“不”就不需要MQ向javascript客户端发送webSocket消息。这里没有足够的信息让我进一步回应。祝你好运。我想你已经在回答我问题的路上了。你说“…需要一个的好理由”。使mq成为必要或有用的要求是什么?非常感谢。