<?php
/**
USES:
sudo -u USER crontab -e
5/* * * * * /usr/bin/php /home2/bin/cronmonitor.php > /dev/null 2>&1 &
*/
class CronMonitor
{
private $bin_php = '/usr/bin/php';
private $path_daemon = '/home2/wwwroot/bin/';
private $process = array(
'sent_record.php',
'sent_message.php',
'sent_jobs.php'
);
public function __construct ()
{
foreach ($this->process as $process)
{
if (! $this->checkpro($process))
{
$this->startpro($process);
}
}
return 1;
}
private function checkpro ($process)
{
$cmd = "ps -aef | grep '{$this->path_daemon}{$process}' | grep -v 'grep' | wc -l";
$fp = @popen($cmd, "r");
$num = @fread($fp, 512);
//make int
$num += 0;
@pclose($fp);
if ($num <= 0)
return 0;
return 1;
}
private function startpro ($process)
{
system("{$this->bin_php} {$this->path_daemon}{$process} > /dev/null 2>&1 &");
}
}
new CronMonitor();
php cron job
最新推荐文章于 2021-09-20 13:02:31 发布