php进程守护
前言
守护进程模型:https://github.com/d2gin/process
笔记
进程守护原理:父进程fork一个子进程,fork成功后马上退出父进程,那现在的子进程就脱离了命令行的控制。但是对于标准输出流还在,所以你的子进程一旦有输出命令时,命令行中还是会有字符输出的,所以这时候需要将子进程的标准输入输出流重定向到一个控设备中
/dev/null
,这时候就不会有内容输出到你的控制台中了。输出流重定向:使用
fclose
来关闭文件描述符,分别关闭STDIN
、STDOUT
、STDERR
,再使用fopen
打开三个文件描述符,就可以替换掉标准输入输出流了。但是需要你将这三个文件资源保存到变量中,并且必须指定为全局变量,否则文件描述符将在函数执行完毕之后被释放。
php进程守护
http://blog.icy8.cn/posts/36952/