PHP中怎么实现多进程并行执行php脚本

PHP中怎么实现多进程并行执行php脚本

今天就跟大家聊聊有关PHP中怎么实现多进程并行执行php脚本,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

直接看代码操作<?php//fork.php$cmds = ['/data/wwwroot/default/test1.php','/data/wwwroot/default/test2.php','/data/wwwroot/default/test3.php'];foreach($cmds as $cmd) {$pid = pcntl_fork();if ($pid == -1) { //进程创建失败            echo '创建子进程失败时返回-1';exit(-1);}else if($pid) { //父进程会得到子进程号,所以这里是父进程执行的逻辑            pcntl_wait($status,WNOHANG);}else{ //子进程处理逻辑            echo getmypid() , " \r\n";sleep(20);// 保持20秒,确保能被ps查到pcntl_exec('/usr/local/php/bin/php',$cmd);exit(0);}}
# php fork.php  //使用php cls模式执行运行fork.php# ps aux | grep fork.php 
root     61097  0.0  0.7 367880  7776 pts/1    S    14:22   0:00 php fork.php root     61098  0.0  0.7 367880  7776 pts/1    S    14:22   0:00 php fork.php root     61099  0.0  0.7 367880  7776 pts/1    S    14:22   0:00 php fork.php root     61311  0.0  0.0 103268   872 pts/2    R+   14:22   0:00 grep --color fork.php

看完上述内容,你们对PHP中怎么实现多进程并行执行php脚本有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。