默认
发表评论 1
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复]请问同一客户端,MobileIMSDK服务端推离线消息同时有别人发消息会冲突么?
阅读(33215) | 评论(1 收藏1 淘帖1
请问服务端推消息给A和客户端B发消息给A同时进行是会冲突的么?
我们离线缓存的机制是 监听到A用户上线后,由服务端主动推消息给 A。但是这个时候如果 B 还在给 A 发消息,则服务端会有消息发送失败。

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:MobileIMSDK
上一篇:[已回复] 已经返回走了丢失回调的消息紧接着又走了发送成功的回调下一篇:[已回复] 请问MobileIMSDK默认的心跳时间是三秒还是十五秒

本帖已收录至以下技术专辑

推荐方案
评论 1
首先:离线消息尽量用“拉”,而不是“推”(拉指的是http拉),拉的好处,只在你用“推”踩过坑后才能体验到;
其实:你说的这种情况,不存在无法发送,如果失败那就是另有原因,从底层原理来说,io本身是异步的,不存在冲突问题。不管是服务端主动推,还是别人向这个客户端发,在接收端看来都是由服务端发过来的(消息都是走的转发嘛,又不是P2P),所以不会有冲突。

建议你们先把这几篇文章读一读后,再系统地考虑怎么做:
IM消息送达保证机制实现(二):保证离线消息的可靠投递
IM群聊消息如此复杂,如何保证不丢不重?
IM开发干货分享:如何优雅的实现大量离线消息的可靠投递
IM开发干货分享:我是如何解决大量离线消息导致客户端卡顿的
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部