codeigniter触发后台进程

时间:2013-04-04 12:04:33

标签: php codeigniter background-process

我正在研究PyroCMS中使用Codeigniter的模块。在此模块中,用户在前端提交某种订单,并且将通知站点的主持人并检查后端的订单,然后他更新行并向用户通知更改。一切都在现在完成。

我要自动制作一些东西。提供电子商品如文件档案等订单的过程是在其他服务器(ftp)中搜索订单并将其带到主服务器。

所以,我建议这个工作流程:

  • 将行插入表格(前端)
  • 初始化机器人以搜索ftp服务器并设置一个标志 机器人正在处理订单。
  • 如果找到:将文件传输到服务器并更新行和 标志。
  • 如果没有找到更新标志,让管理员完成剩下的工作 工作。

现在,问题是我认为将机器人代码放入同一个控制器并使用来自用户的http请求激活机器人任务并不是一个好主意。我的意思是,表单已提交,我只想插入行并结束流程并通知用户它已提交,然后机器人任务应该在后台完成。

现在我们可以更新工作流程:

  • 插入新行
  • 通知用户您的订单已提交。并让用户去。
  • 运行后台进程(触发它)来搜索ftp服务器和 成功时更新行或在出错时不执行任何操作。

我该怎么做这种背景过程?任何想法或经验?

1 个答案:

答案 0 :(得分:0)

您可以将机器人代码放到其他php文件中,然后在成功提交表单后使用php的system或exec命令运行该php文件。这将像新的PHP线程一样运行。 希望这会有所帮助。