默认
发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
Android端处理接收的IM消息过慢导致消息丢失,客户端到底该如何处理大量接收呢?
阅读(38659) | 评论(5 收藏 淘帖
我正在开发一个APP的IM。消息的到达是通过三方确认机制来保证消息不丢不重,但是现在Android端遇到的问题是,处理不过来服务端推送过来的消息,导致消息发送成功之后,对方聊天列表页中没有此条消息。造成此条消息丢失,而且APP本地无此条消息记录,服务端也因为消息已被双向确认删除了。请问Android端应该如何去解决服务端推送过来的消息过快导致消息的丢失的问题。感谢!

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

标签:求助 IM开发
上一篇:Android锁屏后im出现用户离线,有什么办法保持用户一直在线下一篇:请教大佬,IM中聊天消息msgid是由客户端生成还是服务端生成?
推荐方案
评论 5
我问你一个实际情况,真实使用的情况下,一个客户端怎么会在短时间内有大量消息被发过来?你用微信、qq也不会这样,不然手机早就发热、发烫,app也不想打开了,相当于信息轰炸啊
引用:JackJiang 发表于 2020-09-10 15:01
我问你一个实际情况,真实使用的情况下,一个客户端怎么会在短时间内有大量消息被发过来?你用微信、qq也不 ...

确实是这样,但是目前压力测试就会出现这种结果,导致消息的丢失。可能群聊会出现这种情况比较多。并发比较大的地方在群聊里面。同一秒内可能会有多个用户同时发送消息。
签名: asdasdasd
引用:abcde 发表于 2020-09-10 20:04
确实是这样,但是目前压力测试就会出现这种结果,导致消息的丢失。可能群聊会出现这种情况比较多。并发比 ...

对于服务端来说,高并发很正常,对于客户端来说,模拟高并发就有点方向搞徧了,哪有客户端会有高并发这种设计。你测试应该是测务端的极限,而不是客户端的极限吧。

不知道我的理解对不对。
引用:JackJiang 发表于 2020-09-10 21:05
对于服务端来说,高并发很正常,对于客户端来说,模拟高并发就有点方向搞徧了,哪有客户端会有高并发这种 ...

是这样的,真实情况不存在这种压力测试
签名: asdasdasd
第三方确认的机制确实坑,如果不能自己控制业务上增加确认,要么减少服务端下发的数量,要么增加客户端的处理速度,比如增加优先级,尽量保障重要消息不丢
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部