请选择 进入手机版 | 继续访问电脑版

默认
打赏 发表评论 26
引用:weixiaoyao 发表于 2019-01-02 18:07
我们目前的离线思路是另一种,从业务层面弱化离线和在线的区别,群消息表内只存1条消息,send_id, group_id ...

文章里的方法,其实是目前主流移动端IM的做法,有一个好处就是:当用户的手机真正离线(也就是网络不可用的情况下——这可能是用户为了省流量或电量主动关闭的、也有可能是信号不好等等情况下)的时候,是可以完全脱机查看这些消息的。

而你的方案,在手机脱机这种场景下,其实是体验不好的,因为用户不可能及时地把所有未读消息界面都点过,或者说恰好点到这个界面的时候网络信息号好,那么此时好友或群有消息拉取体验就下降很多,而且你的方案会把这种不佳体验风险放大(在极端情况下,由于移动网络都懂或跳变的可能性很大,导致用户可能会频繁碰到这种体验问题)。

不过,没有绝对最优的方案,适合的就是最好的。
签名: 《盘点移动互联网时代的社交产品进化史(上篇):谁主沉浮》http://www.52im.net/thread-2711-1-1.html
引用:JackJiang 发表于 2019-01-02 18:23
文章里的方法,其实是目前主流移动端IM的做法,有一个好处就是:当用户的手机真正离线(也就是网络不可用 ...

是的,说的有道理,在离线情况下我这种体验确实不太好,可能用户点进去聊天界面后都是一片空白。
在网络时断时续的情况下,我倒觉得没有太大问题,因为这时就算是在线消息,也可能出现频繁发送、接收不到的坏体验,更何况离线消息了。
学习了,正在做相关工作。
其实不太想写评论,因为还没消化后提出好问题或者更好的解决方案。想把好位置给有价值的信息。 不过想想积极的评论也是对作者和传播者更大的鼓励。 喜欢阅读这种渐进式文章。 一步一步优化推进,已不是个人纪要,完全是教科书。赞👍
引用:郑柳青 发表于 2019-04-19 12:15
其实不太想写评论,因为还没消化后提出好问题或者更好的解决方案。想把好位置给有价值的信息。 不过想想积 ...

签名: 《盘点移动互联网时代的社交产品进化史(上篇):谁主沉浮》http://www.52im.net/thread-2711-1-1.html
如果只有last_ack_msg_id,如果用户登录了去拉取数据,客户端还没返回拉取的ack,聊天通道就新发送了消息,服务端收到在线的ack,那么这时候如果更新last_ack_msg_id,就可能出错了,这个问题怎么解决呢
引用:jituijiaqiezi 发表于 2019-06-18 16:02
如果只有last_ack_msg_id,如果用户登录了去拉取数据,客户端还没返回拉取的ack,聊天通道就新发送了消息, ...

qq的设计原则是万有一失,方案没有完美的,能把异常控制在可接受范围内,也算是一种折中啦
签名: 《盘点移动互联网时代的社交产品进化史(上篇):谁主沉浮》http://www.52im.net/thread-2711-1-1.html
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部