我在做一个内容产品,现在考虑实现站内消息功能,比如别人对你的文章点赞了、评论了、或者评论被管理员删除了或者别人给你发私信了了,那么要在 APP 端即时显示消息提醒,一般是采取什么解决方案呢?客户端轮询查看有没有新消息吗?
1
TypeErrorNone Sep 6, 2019
轮询请求,这个请求只做 app 的状态查询。
可以针对这个接口单独部署几台服务器,支撑个几万 qps 没问题。 |
2
salamanderMH Sep 6, 2019
websocket,你看看 https://segmentfault.com/ ,它就是这么做的
|
3
hhh798 OP |
4
kx5d62Jn1J9MjoXP Sep 6, 2019
轮询你就等着被卸载吧
|
5
crysislinux Sep 6, 2019
我在想这个东西到底该不该对匿名用户实现,websocket 连接太多了压力也不小。
|
6
hhh798 OP @ssynhtn @crysislinux 那行业内的解决方案一般是啥呢
|
7
xiangyuecn Sep 6, 2019
这不就是推送咩。简单的用第三方,把 ios、华为、oppovivo 的自家推送集成一下 就 ok 了。
即时?惊呆了,app 活着就即时吧,死了就离线推 |
8
hhh798 OP @xiangyuecn 不是 push,是站内消息
|
9
zqwcrystal Sep 6, 2019
可以用静默推送实现,客户端监听到推送之后做请求
|
10
mshadow Sep 6, 2019
@nioncodotcom 也是用 push
|
11
nvioue Sep 6, 2019 via Android
push 加 pull 结合
|
12
niubee1 Sep 6, 2019
现在很多浏览器都支持推送服务
|
13
Takamine Sep 6, 2019 via Android
轮询着被卸载+1。
一般在几个交互逻辑里触发站内信消息推送就好吧。 |
14
crayygy Sep 6, 2019 via iPhone
push 收到以后做区分,前后台单独处理即可
|
15
Raymon111111 Sep 6, 2019
怎么可能是轮询...
消息队列+push |
16
finab Sep 6, 2019
客户端做一个 Pull 操作,触发可以取请求未读消息
然后定义一些场景,触发这些场景就去 做 Pull 操作 例如打开 APP、重新进入 APP、进入消息页面、收到新消息推送 ... 等等 我觉得又不是聊天,用不上实时,能保证用户能看到就行 |
17
opengps Sep 6, 2019
所有推送类应用:要么轮训,要么 tcp 长连接
|
18
xd314697475 Sep 6, 2019
websocket 或者使用第三方推送,eg.极光推送
|
19
Macolor21 Sep 6, 2019
websocket
|
20
laravel Sep 6, 2019
mqtt
|