首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SockJS多套接字

SockJS多套接字
EN

Stack Overflow用户
提问于 2014-10-08 23:34:24
回答 1查看 241关注 0票数 0

我有一个spring + SockJS应用程序,它使用ActiveMQ作为消息代理。

我可以在同一个JSP页面上有两个套接字,一个有发送和接收,另一个只用于接收stomp消息(有很多流量).Is它保证所有的消息都将从这两个套接字发送和接收?

问候你,马尔科

EN

回答 1

Stack Overflow用户

发布于 2015-08-05 00:41:56

在连接的情况下,是的。如果您在任何时候断开连接,在断开连接和重新连接之间,您将失去一切。A related discussion of this issue得出了这样的结论。

请记住,SockJS可能会在不同的客户端上产生不同的连接类型,例如websocket、xhr、xdr等。在任何连接上,SockJS仍将使用TCP,并且仍将保证按顺序交付。但是,非websocket连接可能需要更长的时间才能触发关闭事件,因此您在客户端将有更长的封锁期。几乎任何服务都需要担心这一点,因为SockJS有时会无法连接websocket并“降级”到xhr (根据我的经验,在高瞬时负载下)。

一个不错的模式是在close事件处理程序中添加一个重新连接。即使连接无法建立,close even也会触发,这意味着您需要在重新连接时有一个后退延迟,以防止服务器上出现自我造成的DDoS。另外,我添加了连续的数据包编号,并将检测到丢失数据包的任何客户端视为晚加入者。(请参阅此related ZMQ discussion on late joiners。)您的应用程序需求可能会有所不同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26260847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档