您的位置 首页 php

workerman模型工作流程及进程间关系

workerman是一个高性能的PHP socket 服务器框架,workerman基于PHP多进程以及libevent事件轮询库,PHP开发者只要实现一两个接口,便可以开发出自己的网络应用,例如Rpc服务、聊天室服务器、手机游戏服务器等。

workerman的目标

让PHP开发者更容易的开发出基于 socket 的高性能的应用服务,而不用去了解PHP socket以及PHP多进程细节。

workerman 本身是一个PHP多进程服务器框架,具有PHP进程管理以及 socket通信的模块,所以不依赖php-fpm、 nginx 或者 apache 等这些容器便可以独立运行

workerman视频教程

如果下面的详细分析,你看不懂的话,建议你用视频教程学习,提升一下:

workerman的进程模型

1 基本的master worker模型 master worker模型说明: master进程为主进程,启动过程中读取conf 配置,根据每个应用配置中的ip和端口创建监听socket,然后再根据配置中的进程数创建对应数量的子进程,即worker进程,worker进程会自动继承master进程创建的监听socket,使得worker进程能够独立的接受并处理客户端的连接。

而后master进程进入监听信号的逻辑中,监听worker进程退出信号(worker进程退出后,系统会自动向master进程发送一个SIGHCLD信号,master进程会重新创建子进程,将缺失的子进程补上),master进程还会监听workermand脚本发来的停止信号(SIGINT)和平滑重启服务信号(SIGHUP)。

worker进程为master 进程派生出来的子进程,自动继承了master进程的监听socket,每个worker进程独立的接受并处理客户端的连接。

master worker模型比较适合业务简单的应用或者短连接应用。

我们可以用下面的图来说明一下master worker模型 工作流 程及进程间关系

2 master gateway worker 模型说明: 这种模型多了一个gateway进程组,工作流程与master worker模型基本相同,区别是worker进程不再直接与客户端打交道,客户端与worker进程之间多了一个gateway进程,gateway专职处理网络IO,并维护客户端的长连接。

master gateway worker 模型非常适合长连接应用。

用下面的图来说明一下master gateway worker模型工作流程及进程间关系

文章来源:智云一二三科技

文章标题:workerman模型工作流程及进程间关系

文章地址:https://www.zhihuclub.com/150364.shtml

关于作者: 智云科技

热门文章

网站地图