永远运行PHP脚本在HostGator上推送通知


Run PHP script forever for push notifications on HostGator

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

我的问题是:如何运行PHP脚本,使其永远不会超时/关闭?这是正确的方式吗?还是我应该换一种方式?

我有带cPanel的HostGator。我还可以使用Linux命令行通过Putty访问根目录。

我尝试过的:1.)我尝试在后台通过Linux命令提示符运行该脚本。这起到了作用,但最终停止了(我猜它超时了?)2.)我研究了《克朗乔布斯》,但这部电影似乎每隔x分钟就会调用一次脚本。

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

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

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

您可以阅读cPanel中的文档,了解如何在服务器中使用。

如果你想执行类似php的守护程序,你应该:

  • 从控制台取消链接
  • set_time_limit设置为0
  • 也许您想要创建异步脚本
  • 也许你会想要表演不同的节目
  • 等等

此外,您还会遇到许多停止过程、检查状态等问题。

我建议使用类似PHPDaemon 1,2(也许是Ratchet?)库的东西,不要考虑问题,使用类似Supervisord的东西,如果你的守护进程会崩溃或卡住,它会自动重新启动你的守护程序。