Spring websockets——是否可以向离线用户发送消息?



我的数据库中有很多用户。我希望能够通过websockets发送消息给他们,即使他们没有连接。每当我向离线用户发送消息时-我希望消息为他排队,直到他连接,然后将所有消息推送给他。

像这样:

template.convertAndSendToUser(
                              "user123",
                               queue,
                               hello);

这个功能可能吗?

请记住,我使用activeMQ作为我的消息总线。(message broker)。我上面描述的功能是jms消息队列中的标准

编辑:我用activemq创建了一个应用程序-当我发送消息给离线用户时,消息没有排队,它丢失了。什么好主意吗?

谢谢!

看以下内容:

在系统中通常不需要长时间处于离线状态的持久主题订阅者。其原因是代理需要为上述订阅者保留发送到这些主题的所有消息。随着时间的推移,这种消息堆积会耗尽代理存储限制,例如,导致系统的整体速度减慢。

您总是可以使用JConsole或Web Console等管理工具手动取消订阅不活动的持久订阅者,但显然还有更多的事情可以帮助管理使用持久订阅者的系统(可能来自他们无法控制的环境)。从5.6版本开始,我们在这方面做了一些改进。

这只是一个例子,但你可以使用相同的策略来解决你的问题。

相关内容

  • 没有找到相关文章

最新更新