PHP无限循环过程;这是好的解决方案吗?


PHP infinite loop process; Is it good solution?

我正在为 CMS 创建一个插件,需要在后台执行一个或多个前期任务。由于它是开源CMS的插件,cron job不是一个完美的解决方案,因为用户可能无法访问其服务器上的cron。

我将通过 AJAX 请求启动无限循环,然后中止 XHR 请求。因此,HTTP 连接将被关闭,但脚本将继续运行。

一般来说,这是一个好的解决方案吗?服务器资源呢?服务器(如 Apache(中是否有长时间运行线程的关闭或限制策略?

长时间运行的 php 脚本不是太好主意。如果您的脚本使用会话变量,则在关闭其他基于会话的脚本之前,您的用户将无法加载任何页面。

如果您确实需要长时间运行的脚本,请确保它不使用任何会话,并将它们保持在最大执行时间内。不要让它在没有您的控制的情况下运行。它可能会导致各种问题。我记得当我做这样的事情时,我的服务器崩溃了几次。

知道你想做什么,并确保它在不同的服务器上得到了很好的测试。

还要搜索类似的模块,并检查它们使用什么方法来解决这样的问题。向专业人士学习。 :)