码迷,mamicode.com
首页 > Web开发 > 详细

php实现常驻进程 多进程监控

时间:2019-02-22 23:21:43      阅读:461      评论:0      收藏:0      [点我收藏+]

标签:highlight   logs   cront   div   eol   not   子进程   abd   如何   

php都是通过crontabd定时脚本处理队列的,面试被问到php如何常驻进程进行处理队列,想了半天这样不知道是否是一种方式 

<?php


function logs()
{
file_put_contents("/www/wang/logs/".date("Y-m-d",time()).".txt",date("Y-m-d H:i:s").PHP_EOL,FILE_APPEND);

}

$i = 1;
while(true){

fork("logs();");

sleep(1);
//$i++;
}

function fork($code)
{
$pid = pcntl_fork();
if ($pid == 0) {
echo "forking 子进程---------pid:".getmypid().PHP_EOL;
eval($code);
exit();
} else if($pid > 0) {
echo ‘Oh my god! I am a father now! my pid is ‘.getmypid().‘ ---- My child is‘. $pid . PHP_EOL;
$quit_pid = pcntl_wait($status);
echo "回收子进程:".$quit_pid.PHP_EOL;
} else {
echo "can not fork";
}
}

 

php实现常驻进程 多进程监控

标签:highlight   logs   cront   div   eol   not   子进程   abd   如何   

原文地址:https://www.cnblogs.com/php-linux/p/10420878.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!