检查所有cli进程是否已完成

时间:2014-06-06 05:54:04

标签: php zend-framework exec command-line-interface

我有一个Web应用程序,我从几个包含数百万个数据的表中生成了大量报告。由于这个过程是一个巨大的过程,我使用cli过程来使其工作。但是现在我必须改进过程的性能,我把一个cli过程分成了很多。我的场景如下......

假设我有1000条报告生成记录。所以我将它们分成4个块,每个块包含250个记录。因此,最初只有一个cli过程。所以现在我将它们分成4个。

for($i = 1;$i <= 4;$i++){
  exec('php path/to/file',$out);
}

文件内

//Some code
//Updating the completed time for the process in database

我传递限制的每个进程都开始获取记录。我也将每个cli进程记录到一个表中,其中也有完成的时间。我在考虑第一个进程作为主进程而其他进程作为子进程process.Inside每个进程我正在制作报告生成的记录。因此,在完成所有流程后,我必须生成报告。因此,我想要做的是在所有子进程完成时更新主进程的完成时间,以便我也可以生成报告。但是如何检查所有子进程是否完整..?非常感谢任何帮助..我正在使用PHP和Zend Framework

0 个答案:

没有答案