微信的离线消息在 iOS 上怎样实现的?

2014-12-20 23:33:17 +08:00
 wangleineo
是通过苹果的服务器推送吗?还是开启了Background模式?
如果是推送,会不会有很大延迟,或者丢包?
另外以微信的用户数,APNS的服务器是不是要为微信承受很大的负载?
3648 次点击
所在节点    问与答
6 条回复
CodeingBoy
2014-12-20 23:41:35 +08:00
推送的
huiter
2014-12-20 23:45:09 +08:00
推送实现的,推送偶尔有延迟主要看手机端的网络,基本不会丢。
apns的服务压力应该还好,而且apple可以控制。
x86
2014-12-21 00:25:11 +08:00
妈的,移动的宽带,一条信息推送过来晚了2小时
ytzong
2014-12-21 01:56:27 +08:00
忙时当然会丢包,比如过年那几天,APNS 甚至比微信本身的服务质量更好,推送能收到,但微信里丢了
dorentus
2014-12-21 18:03:07 +08:00
使用微信的 iOS 客户端的用户数量必然比有 Apple ID 的 iOS 用户数量少,所以这种负载对苹果来说是完全可以预见并且应该可以正常支持的。

并且苹果在开发者文档里面也明确说了,推送不保证及时,也不保证一定能到,如果应用有这方面的需求的话,得自己想其它办法(不过基本没啥其它办法,目前对后台任务的限制少了,但是性能方面的限制还是有,并且用户也可能会去把应用的后台权限给禁用掉)。
ningcool
2017-02-17 18:35:01 +08:00
这个逻辑就好比:公众号后台的文章推送,大号好几千万的用户,几秒内就推送完毕了,而且走的是腾讯自己的服务器。同理,腾讯走 APNS 服务器也是小巫见大巫,而且微信消息同时发送的并发量,也不见得比微信公众大号一次推送的多多少。所以,这个量也不是 APNS 的瓶颈。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/155412

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX