class Server{ ???const PORT = 8888; ???public function port() ???{ ???????//netstat -anp 2>/dev/null| grep 8888 |grep LISTEN |wc -l ???????$shellCommand = ‘netstat -anp 2>/dev/null| grep ‘ . self::PORT . "| grep LISTEN | wc -l"; ???????$result = shell_exec($shellCommand); ???????if ($result != 1) { ???????????//进程不存在,发送警报信息 ???????????echo ‘At ‘.date(‘Y-m-d H:i:s‘) . ‘ service process is exit‘ . PHP_EOL; ???????} else { ???????????echo ‘At ‘.date(‘Y-m-d H:i:s‘) . ‘ service process is ok‘ . PHP_EOL; ???????} ???}}Swoole\Timer::tick(1000, function (int $timer_id) { ???(new Server)->port();});
nohup /usr/bin/php ./Server.php > ~/test.log &
PHP+Swoole+Linux实现进程监控
原文地址:http://blog.51cto.com/phpme/2335229