2016-04-25 154 views
0

我找了此方案的最坚实的解决方案:cron作业发送推送通知

服务器1提供每15秒更新XML(或以下)现场直播的体育赛事(这个喜欢进球,半场结束时,比赛结束)。

每当XML带来新的东西时,我正在使用OneSignal API向我的应用程序(iOS和Android)的用户发送推送通知。

那么,什么会更好?:

  • 用PHP文件中的cron作业,读取XML并触发推送通知,当有新的东西?
  • 像Node这样的东西会更好吗?

让我担心的事情是,如果cron作业每运行一次,比如说10秒,它可能会早晚失效。

那么,任何人都可以建议最坚实的解决方案来做到这一点? 谢谢。

+0

cron作业是最好的东西一个 – JYoThI

+0

想象还有像排队服务或消息队列 - 样iron.io, rabbitMQ,Gearman等。Crons适用于简单的时间表 - 设置cron的选项有限,而且他们不需要完成其他任务。 –

+1

@HimelNagRana这是一个很好的建议。我将寻找像iron.io这样的服务。有些东西可能不算太贵...... – fana

回答

0

cron本身不能做你想做的事情。您可以创建自己的例程。睡眠的使用(但这不会给出正确的结果,因为它没有考虑到运行命令所需的时间)。
Cron只允许至少一分钟
你可以考虑用一个运行你的任务的无限循环编写一个shell脚本,然后睡眠x秒,但正如我之前所说的不准确。



编辑: 在这里你可以看到如何让一个shell脚本link1

+0

假设程序运行时并不十分精确,如果代码的两个实例同时运行并不严重,则可以以1分钟的间隔运行四个不同的脚本cron的。每个脚本在实际执行所需操作之前都有不同的睡眠时间,在0到45秒之间。 –

+0

那么,精度是一种重要的因为我不能有同样的推送通知发送给同一用户不止一次......我不知道那最少一分钟...... – fana