c/s 端做消息推送通知的话,如何选择? websocket 还是选择长轮询?

2020-08-25 14:53:31 +08:00
 tctc4869

要做实时数据显示功能,当然这里主要指手机客户端,在客户端后台挂起,实时监听,如果有内容则判断是否要显示通知栏。那么是选择长轮询,还是用 websocket ?然后服务端增加 websocket 服务端处理。

在这个帖子里: https://www.v2ex.com/t/477876?r=julyclyde 。有 V 友指出“长连的资源消耗不比轮询低”,“受网络限制比较大,需要处理好重连”

那么到底要怎样考虑做选择?

4032 次点击
所在节点    程序员
27 条回复
unco020511
2020-08-25 14:59:04 +08:00
使用第三方推送 SDK
xuanbg
2020-08-25 15:07:59 +08:00
手机你不走系统通知?
chinvo
2020-08-25 15:08:54 +08:00
手机你还想保活当流氓咋地?

当然是老老实实系统推送 /FCM 啊
Hanggi
2020-08-25 15:11:24 +08:00
Firebase 国内收得到吗?跟其他国内厂商比哪个好?
有谁用过 mobpush 吗?跟极光比哪个好?
tctc4869
2020-08-25 15:52:53 +08:00
@xuanbg 系统通知?你的意思要离线推送么?
internelp
2020-08-25 15:55:25 +08:00
@Hanggi 我用过 mobpush,因为做的是监控 APP,需要消息到达及时,它不满足,转战阿里云了。
coderxy
2020-08-25 16:03:57 +08:00
第三方推送吧,不然 app 不在进程中时你收不到的。
tctc4869
2020-08-25 16:14:33 +08:00
@coderxy
@unco020511

第三方推送?安卓第三方推送听说是群魔乱舞,不同的手机要接入不同的第三方接入服务。
unco020511
2020-08-25 16:17:35 +08:00
@tctc4869 目前的最优选择就是第三方,你如果要自己开发,想想准备投入多少人力
BlackGrasshopper
2020-08-25 16:18:15 +08:00
统一推送联盟
tctc4869
2020-08-25 16:24:11 +08:00
@unco020511 我目前的系统通知是在 app 没有被安卓系统杀死的情况下进行消息通知
coderxy
2020-08-25 16:29:11 +08:00
@tctc4869 可以接第三方的,比如极光推送啥的。 因为你自己搞会有很多问题,比如像小米啥的它在后台限制了后台长连接,你要想在 app 不启动的情况下推送消息下去,比如走小米的推送渠道。 还有好几家都是这样。 所以最好的方案就是走极光一类的第三方推送。
chinvo
2020-08-25 16:30:53 +08:00
@Hanggi #4 FCM 国内收得到的, 除了被禁止装 Google Play Service 的华为
tctc4869
2020-08-25 16:35:05 +08:00
@coderxy 在 app 不被系统杀死的情况下,可以用轮询 http 或 websocket 直接与自家后台服务联通做 app 消息通知把
stevenkang
2020-08-25 16:47:27 +08:00
凡是手机上 app 想自启动做推送,不用统一推送的,见一个杀一个。
learningman
2020-08-25 16:49:26 +08:00
@chinvo 前提是用户有 GMS
摸摸良心,国内有多少用户装了 GMS 。。。真要推送还得当流氓
chinvo
2020-08-25 16:50:06 +08:00
@learningman #16 7.0 及之后除了华为都自带 GMS 的
IGJacklove
2020-08-25 18:46:51 +08:00
@tctc4869 看你愿不愿意花钱了,肯花钱别人都帮你做好了.
learningman
2020-08-25 22:45:14 +08:00
@chinvo MIUI 和 ColorOS 这种的应该都没有吧,原生安卓才多少人啊
tctc4869
2020-08-26 00:37:35 +08:00
@IGJacklove 你的意思是安卓系统通知不用第三方系统通知服务都会出问题用不了。必须要花钱?

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

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

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

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

© 2021 V2EX