task进程和woker进程的区别

来源:8-4 Websocket服务搭建并支持http服务

qq_吃羊的肉_0

2019-06-02

swoole中这两个有什么区别?我在测试时,woker_num和task_woker_num都设置了2,然后我发现在开启swoole服务时,绑定的onWorkerStart回调执行了四次。这两个有什么不一样吗

写回答

1回答

Lucar_陈

2020-03-31

这两个都是工作进程,你每个都设置了2,所以进到 onWorkerStart 事件$work_id总共就是4个

按照官方给的文档逻辑是:有一个master 进程,还有一个进程manager进程,worker是基于event触发,而task则是manager直接生成的子进程。(具体可以查看下面链接的最后一副图)

https://wiki.swoole.com/#/server/init?id=base%e6%a8%a1%e5%bc%8f%e7%9a%84%e9%80%82%e7%94%a8%e5%9c%ba%e6%99%af%ef%bc%9a

说的通俗点举例就是:worker 就是掌勺的大厨。而 task 就是小帮工,随时帮助 Worker大厨处理他交代的任务,让worker能专心完成他的主线工作。

0
0

Swoole入门到实战打造高性能赛事直播平台

swoole创始人推荐,借助Swoole打造高性能直播平台

2228 学习 · 1062 问题

查看课程