Swoole方法之start
启动服务器,监听所有TCP/UDP端口
提示
启动成功后会创建worer_num + 2 个进程 . Master进程+Manager进程 + server->worker_num个 Worker进程.
启动失败后会立即返回false.
启动成功后将进入事件循环,等待客户端连接请求.start方法之后的代码不会执行.
服务器关闭后,start函数返回true,并继续向下执行.
设置了task_worker_num会增加响应数量的Task进程.
方法列表中start之前的方法(set,on,addListener,listen,addProcess)仅可在start调用前使用.在start之后的方法仅可在onWorkerStart.onReceive等事件回调函数中使用.
扩展
Master主进程
主进程内有多个Reactor线程,基于epoll/kqueue/select进行网络事件轮训.收到数据后转发到Worker进程去处理.
Manager进程
对所有Worker进程进行管理,Worker进程生命周期结束或发生异常自动回收,并创建新的Worker进程.
Worker进程
对收到的数据进行处理,包括协议解析和响应请求.未设置worker_num,底层会启动与CPU数量一致的Worker进程.
启动失败扩展内会抛出致命错误,请检查php error_log的相关信息.errno={number}是标准的Linux Errno
如果开启了log_file设置,信息会打印到指定的Log文件中.

浙公网安备 33010602011771号