关于 APP 消息推送,服务器后台是 php 的,如果一则消息要推送给一批设备,是不是必须有一个队列在后台执行?!

2015-02-15 11:53:38 +08:00
 xiaoyong
如题,最近在研究APP消息推送,因为无论是与APNS对接还是与像信鸽这种第三方服务平台对接,推送消息时,都需要调用第三方服务器的接口。现在,服务器后台是php的,如果一则消息要推送给一批设备,而这一批设备没有共同特征,不能使用标签来聚集,设备的token时根据服务器动态计算出来的。如此一来,是不是必须有一个队列在后台执行,每次推送给一台设备 ?有没有更好的解决方法?
4043 次点击
所在节点    程序员
6 条回复
sun019
2015-02-15 11:58:01 +08:00
请用 jpush 或者云推
当然 有空或者推送是你们APP的核心功能 可以自己写
awebird
2015-02-15 12:38:16 +08:00
即使是一条,也建议放到队列里做。所有三方服务(短信,邮件,推送接口)的响应时间甚至稳定性都应该假定不可靠
xiaoyong
2015-02-15 12:48:02 +08:00
@awebird 恩。php的队列功能有没有好的建议。谢
belin520
2015-02-15 12:59:13 +08:00
即使一条都队列
awebird
2015-02-15 19:51:19 +08:00
@xiaoyong 简单的话,可以建张任务表,该发推送的时候直接insert一条任务,配合crontab定期执行未完成的任务,修改任务状态这样。专业的还有Gearman,ActiveMQ这些方案
julyclyde
2015-02-16 11:02:09 +08:00
@awebird 用数据库不易解决重复发送的问题吧?稍微不流畅一下,下次cron就又发这条内容了

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

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

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

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

© 2021 V2EX