Swoole Server 的两种运行模式介绍

在 Swoole\Server 构造函数的第三个参数,可以填 2 个常量值 -- SWOOLE_BASE 或 SWOOLE_PROCESS,下面将分别介绍这两个模式的区别以及优缺点

SWOOLE_PROCESS

SWOOLE_PROCESS 模式的 Server 所有客户端的 TCP 连接都是和主进程建立的,内部实现比较复杂,用了大量的进程间通信、进程管理机制。适合业务逻辑非常复杂的场景。Swoole 提供了完善的进程管理、内存保护机制。 在业务逻辑非常复杂的情况下,也可以长期稳定运行。

Swoole 在 Reactor 线程中提供了 Buffer 的功能,可以应对大量慢速连接和逐字节的恶意客户端。

进程模式的优点:

  • 连接与数据请求发送是分离的,不会因为某些连接数据量大某些连接数据量小导致 Worker 进程不均衡
  • Worker 进程发送致命错误时,连接并不会被切断
  • 可实现单连接并发,仅保持少量 TCP 连接,请求可以并发地在多个 Worker 进程中处理

进程模式的缺点:

  • 存在 2 次IPC 的开销,master 进程与 worker 进程需要使用 unixSocket 进行通信

SWOOLE_BASE

SWOOLE_BASE 这种模式就是传统的异步非阻塞 Server。与 Nginx 和 Node.js 等程序是完全一致的。

worker_num 参数对于 BASE 模式仍然有效,会启动多个 Worker 进程。

当有 TCP 连接请求进来的时候,所有的 Worker 进程去争抢这一个连接,并最终会有一个 worker 进程成功直接和客户端建立 TCP 连接,之后这个连接的所有数据收发直接和这个 worker 通讯,不经过主进程的 Reactor 线程转发。

  • BASE 模式下没有 Master 进程的角色,只有 Manager 进程的角色。
  • 每个 Worker 进程同时承担了 SWOOLE_PROCESS 模式下 Reactor 线程和 Worker 进程两部分职责。
  • BASE 模式下 Manager 进程是可选的,当设置了 worker_num=1,并且没有使用 Task 和 MaxRequest 特性时,底层将直接创建一个单独的 Worker 进程,不创建 Manager 进程

BASE 模式的优点:

  • BASE 模式没有 IPC 开销,性能更好
  • BASE 模式代码更简单,不容易出错

BASE 模式的缺点:

  • TCP 连接是在 Worker 进程中维持的,所以当某个 Worker 进程挂掉时,此 Worker 内的所有连接都将被关闭
  • 少量 TCP 长连接无法利用到所有 Worker 进程
  • TCP 连接与 Worker 是绑定的,长连接应用中某些连接的数据量大,这些连接所在的 Worker 进程负载会非常高。但某些连接数据量小,所以在 Worker 进程的负载会非常低,不同的 Worker 进程无法实现均衡。
  • 如果回调函数中有阻塞操作会导致 Server 退化为同步模式,此时容易导致 TCP 的 backlog 队列塞满问题。

BASE 模式的适用场景:

如果客户端连接之间不需要交互,可以使用 BASE 模式。如 Memcache、HTTP 『服务器』等。

特别声明:[Swoole Server 的两种运行模式介绍] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

SkinLane肌侣 | 从“分区”到“靶向”,“一片多效”的精准突围(肌侣梦幻面膜怎么样)

从解决“敷面膜时间太长”这个朴素痛点出发,到开创一个亿级规模的新兴品类,肌侣的“双层膜布”故事揭示了一个深刻的商业逻辑:在技术创新已趋同质化的今天,对用户日常痛点的深刻体察与系统性解决,可能比单纯的成分突破…

SkinLane肌侣 | 从“分区”到“靶向”,“一片多效”的精准突围(肌侣梦幻面膜怎么样)

KHX50-200路煤矿井口防雷器 本安型通讯光缆避雷器 矿用防爆防雷箱(2130煤矿)

在井口区域,其安装于通信线路进入设备箱的入口处或户外转井下接口,遵循“先保护后接入”原则,阻断雷电或浪涌电压侵入路径;针对瓦斯传感器、人员定位系统、监控摄像头等设备的信号线路,可确保数据准确传输,避免误报警或…

KHX50-200路煤矿井口防雷器 本安型通讯光缆避雷器 矿用防爆防雷箱(2130煤矿)

PConline科技圈速览-1月26日热点资讯(科技圈搜罗)

银河通用『机器人』️公众号近日消息,中央广播电视总台正式官宣,银河通用『机器人』️正式成为总台 2026 年春节联欢晚会指定具身大模型『机器人』️。 苹果与谷歌达成长期合作协议,将基于谷歌Gemini模型为苹果AI功能提供技…

PConline科技圈速览-1月26日热点资讯(科技圈搜罗)

上海企业福利礼品定制工厂十大品牌推荐榜

上海作为国际化大都市,汇聚了众多专业礼品定制工厂,它们以创新设计和品质服务,为企业客户打造独具匠心的礼品解决方案。在这个注重个性化和品质感的时代,企业挑选福利礼品时不再满足于千篇一律的成品,而是追求能够体现企…

上海企业福利礼品定制工厂十大品牌推荐榜

2026水印照片怎么快速去水印,实测榜一键高效处理款(水印图片怎么弄到图片上)

作为常年和素材打交道的博主,我实测了15款去水印小程序,从照片处理速度、去痕效果、画质保留、隐私安全、免费程度5个维度严格打分,终于选出3款「照片去水印王者」——红枣去水印、无损去水印精灵、清痕去水印,帮…

2026水印照片怎么快速去水印,实测榜一键高效处理款(水印图片怎么弄到图片上)