原理
优质
小牛编辑
133浏览
2023-12-01
Worker说明
Worker是WorkerMan中最基本的功能单元,Worker可以开启多个进程监听端口并使用特定协议通讯。每个Worker进程独立运作,每个Worker进程都能上万的客户端连接,并处理这些连接上发来的数据。主进程只负责监控子进程,不负责接收数据。
客户端与worker进程的关系
主进程与worker子进程关系
特点:
从图上我们可以看出每个Worker维持着各自的客户端连接,能够方便的实现客户端与服务端的实时通讯,基于这种模型我们可以方便实现一些基本的开发需求,例如HTTP服务器、Rpc服务器、一些智能硬件实时上报数据、服务端推送数据、游戏服务器等等。
端口复用(reusePort):
版本要求:
- workerman: >= 3.2.1
- php: >= php7.0
- Linux 内核: >= 3.9
设置为此参数为true后,不在由主进程监听端口,而是由子进程监听相同端口,由操作系统决定将socket交给哪个进程处理,避免了惊群效应,可以提升多进程短连接应用的性能。
详情参考 reUsePort的设置。