目前在开发 IM 系统,用了 NGINX 来做反向代理,服务端用的是 spring boot,使用了融云的 IM 服务。融云提供了设置消息回调的地址,即,当客户端发出消息的时候,融云这边把消息回调到填写的地址中,但是有个问题是,融云的回调消息只有在超时的情况下才会重发,而不是根据返回的 HTTP 状态码来重发,相当于如果服务正在重启或者宕机的话,不会触发融云的重发机制,因为宕机的时候在融云那边系统看来不算超时。所以有可能会出现丢消息的隐患。
之前想过单独部署机器来专门处理消息回调,虽然处理消息回调的稳定性提高了,但似乎也还是会有丢消息隐患的。
想请问下大家这种情况下该如何避免丢消息?
谢谢。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.