这就是问题所在,我有一个链接,就像这样:
http://mydomain.com/veryLongPrcoess.php,
在这个php中,我将做一些非常耗时的事情。我使用AJAX调用它,但在我调用它之后,它最后超时了,因为服务器中的进程仍在运行。它可能需要10分钟或更长的时间来处理它...
我如何通知用户,并告诉他/她我完成了工作?而不是等待它超时。谢谢。
发布于 2011-07-09 00:06:58
实现这一点的一种方法是使用pcntl_fork。这将允许长任务在单独的进程中运行,您只需在任务完成时向用户发送一封电子邮件。或者,您可以使用AJAX轮询服务器以查看任务是否已完成?
发布于 2011-07-09 00:42:34
如果您的脚本运行时间很长,我认为除了使用pcntl_fork派生进程之外,您还需要set_time_limit(0)这将允许脚本运行所需的时间。如果它的内存是创造性的,那么您可能还需要使用ini_set覆盖memory_limit。
https://stackoverflow.com/questions/6627199
复制相似问题