写好php脚本。建议定期检测内存占用,核心逻辑就不写了。这个跟业务有关。
if(memory_get_usage()>100*1024*1024){ exit(0);//大于100M内存退出程序,防止内存泄漏被系统杀死导致任务终端 }
假设该php文件的路径为/root/run.php
打开终端setsid php /root/run.php > /dev/null &
编辑进程监控脚本,当进程不存在时,自动重启 /root/monitor.sh
#!/bin/bashalive=`ps aux|grep root\/run|grep -v grep|wc -l`if [ $alive -eq 0 ] then php /root/run.php > /dev/null & fi
添加计划任务(每分钟检测一次)
crontab -e* * * * * /root/monitor.sh > /dev/null &