永久运行PHP脚本以获取HostGator上的推送通知

时间:2015-11-12 20:53:31

标签: php ios linux push-notification

我有一个需要运行的PHP脚本,它有一个无限循环。它用于连接到Apple的推送通知服务,然后通过我们的推送队列推送通知。

我的问题是:如何运行PHP脚本以使其永不超时/关闭?这甚至是解决这个问题的正确方法还是我应该采取另一种方式?

我有带有cPanel的HostGator。我也可以使用Linux命令行通过Putty访问root。

我尝试过的事情: 1.)我尝试在后台通过Linux命令提示符运行脚本。这工作但最终停止了(我猜测它超时了吗?) 2.)我研究了Cron Jobs"但这似乎每x分钟调用一次脚本。

我想要一些不断运行的东西,永远不会超时。

2 个答案:

答案 0 :(得分:0)

如果你想像守护进程一样执行php,你应该:

  • 从控制台取消链接;
  • set_time_limit设为0;
  • 也许你想要创建异步脚本;
  • 也许你会想要执行不同的程序;

此外,您将在停止过程,检查状态等方面遇到许多问题。

我建议使用类似PHPDaemon 12(可能是Ratchet?)库的内容,如果您的守护进程不考虑问题并使用类似Supervisord的内容会崩溃,或者卡住它会自动重启你的守护进程。

答案 1 :(得分:0)

您可以使用 Cron 每分钟运行一次脚本。

php -f /home/your_username/public_html/script.php

您可以阅读documentation from cPanel以了解如何在您的服务器中使用。