PHP工程师平时使用最多的应该是PHP-FMP调度php进程了,PHP的使用并不局限于做Web,也可以用来进行系统工具类的编程,做监控或者是运维。接下来就说说如何实现PHP多进程的编程。
首先启动一个主进程,主进程用来读取配置信息
例如,我读取到了我需要监控5个指标。接下来主进程启动5个子进程,分别监控这5个指标。
化简操作:一个主进程创建5个子进程
创建进程在需要使用php的一个函数pcntl_fork(),这个函数可能有的人不太熟,不过接触过Linux C变成的人都知道Linux下有个叫fork()的函数,用来创建子进程。
需要注意的是:这个函数在Linux下才能使用,而且需要安装pcntl的扩展。
官方文档是这样说的:
pcntl_fork()函数创建一个子进程,这个子进程仅PID(进程号) 和PPID(父进程号)与其父进程不同。fork怎样在您的系统工作的详细信息请查阅您的系统 的fork(2)手册。
成功时,在父进程执行线程内返回产生的子进程的PID,在子进程执行线程内返回0。失败时,在 父进程上下文返回-1,不会创建子进程,并且会引发一个PHP错误。
这样就可以创建一个子进程了,子进程创建成功以后会执行pcntl_fork()之后的方法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:support@lcayun.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。