我想在 Symfony2 中创建一个后台进程,使用Process 组件并在后台运行它,如下所示:
$process = new Process('php myfile.php --option1 --option2');
$process->start();
我想在这里运行的脚本将无限期地运行(while (true)
或类似的东西),并且应该可以从控制台命令或控制器中终止。
问题是 - 我如何在 Symfony 中(例如从控制器)中从与创建它不同的上下文访问这样的进程?那就是 - 没有原始Process
实例?假设对路由的请求create_process
启动了该过程,然后请求kill_process
应该终止它。甚至可能吗?
我能想到的一种方法是序列化进程对象并存储在数据库中,但似乎这个解决方案可能存在很多问题。