给定以下用例,在Java Web应用程序中:
浏览器建立与服务器的连接;请求长时间运行的操作;用户关闭浏览器;服务器发出事件通知操作完成;用户再次打开浏览器;关闭浏览器后,用户应收到服务器发送的消息。
您会推荐什么框架,以帮助我实现上述用例,最好是在集群中?
我一直在玩《大气》,《彗星》和春季短信。它们非常接近,但是当浏览器关闭时,它们似乎并没有实现持久队列以保证消息的传递。
谢谢
最佳答案
要劫持上面的评论。
队列(例如与JMS兼容的队列)不是数据库。它们不是数据存储,甚至不是持久队列。它们是路由器,持久性更是一种可靠性选择。
例如,数据库可以处理几乎无限的过时消息,永远不会被永远不会再次登录的用户丢弃。队列中有许多空闲消息会带来实际问题。
因此,您的解决方案是将消息填充到数据库中,然后在用户连接时将其耗尽。
关于java - 具有持久队列的服务器推送Java框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31740798/