默认
发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
用户上线后同步IM群聊消息,关于记录存一份或多份的疑问
阅读(31691) | 评论(5 收藏 淘帖
群聊消息参考了站长的那篇《群聊存一份还是多份》的终极方案,只存一条消息,群组用户通过last_ack_time来获取群聊消息。

目前遇到的问题是,当用户上线后开始同步群消息,每获取20条消息发送一个ack_time给服务端确认收到消息,与此同时群里用户也在不断发送新消息,这样是否会造成一直处于同步消息的状态,虽然我觉得这种情况出现的概率挺小,但领导纠结在这个问题上,并有打算回到存多份消息的方案上..

请站长和大佬们不吝赐教

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

标签:求助 IM开发
上一篇:难得干货,揭秘支付宝的2维码扫码技术优化实践之路下一篇:求助关于IM消息推送和拉取如何共存?
推荐方案
评论 5
在线状态下,都是实时接收,同步是指离线后下次上线的事情。

你领导是想把扩散读方式改成扩散写?
引用:JackJiang 发表于 2020-10-22 11:38
在线状态下,都是实时接收,同步是指离线后下次上线的事情。

你领导是想把扩散读方式改成扩散写?

那离线用户上线后,同步旧消息的同时,实时接收到新消息并返回ack确认码给后端,这时该用户的last_ack_time就会修改成最新一条消息,这样没拉取完的旧消息是否会丢失?
引用:mirrorpen 发表于 2020-10-22 11:42
那离线用户上线后,同步旧消息的同时,实时接收到新消息并返回ack确认码给后端,这时该用户的last_ack_ti ...

旧消息跟在线后新收到的消息,本来就是增量并集关系,不存在丢失啊
引用:mirrorpen 发表于 2020-10-22 11:42
那离线用户上线后,同步旧消息的同时,实时接收到新消息并返回ack确认码给后端,这时该用户的last_ack_ti ...

这个增加业务复杂度就能解决。不用非的改为写扩散。
增加一个时间戳就能搞定
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部