运行长时间执行php脚本,甚至关闭浏览器
我正在使用symfony框架进行web工资单项目。我们每月有27000名员工需要处理。当我们进行员工工资单处理时,我们不能依赖于浏览器请求,因为这是一个耗时的过程,并且服务器超时。作为解决方法,我们喜欢在linux服务器上从后台执行php脚本。然后,即使关闭浏览器,脚本也可以执行背景 完成此任务的最佳方法是什么请帮助 更多信息 我们希望在用户点击按钮时,在web界面上给出“工资登记流程开始”按钮,工资登记流程应启动,甚至浏览器关闭,在后台完成之前,它应一直执行运行长时间执行php脚本,甚至关闭浏览器,php,linux,cron,background-process,Php,Linux,Cron,Background Process,我正在使用symfony框架进行web工资单项目。我们每月有27000名员工需要处理。当我们进行员工工资单处理时,我们不能依赖于浏览器请求,因为这是一个耗时的过程,并且服务器超时。作为解决方法,我们喜欢在linux服务器上从后台执行php脚本。然后,即使关闭浏览器,脚本也可以执行背景 完成此任务的最佳方法是什么请帮助 更多信息 我们希望在用户点击按钮时,在web界面上给出“工资登记流程开始”按钮,工资登记流程应启动,甚至浏览器关闭,在后台完成之前,它应一直执行 要在后台运行,请执行以下步骤: 将
要在后台运行,请执行以下步骤:
有不同的方法来处理这个问题 第一种方法是从PHP代码开始,在后台执行startinan shell命令(如果愿意,可以使用
nohup
),这与重复问题中的第一个答案几乎相同
第二种方法是使用PHP特性。
使用PCNTL,您可以创建在后台运行的子进程。因此,您可以创建一个并返回给用户:“工资单进程正在运行-如果系统准备就绪,您将收到一封邮件”.可能与windows的大多数答案相同。我们正在开发LAMP Stack,嗯?那里没有windows答案。它们都是Unix/Linuxok的。感谢您的贡献。您知道“L”LAMP代表Linux?副本中的第一个答案对您来说应该很好。Thansk james我们计划将输出写入数据库,而不是文本文件谢谢您的回答好主意+1@Roshan--祝你好运。很抱歉,格式太乱了,但我似乎无法整理它!
#!/usr/bin/bash
# set up environment variables, PATH etc. here
php /home/yourapp/yourscript.php