服务器进程计时器发出Swoole错误9009消息,而不是工作进程回调?

时间:2020-05-05 14:03:20

标签: php websocket swoole

我将Swoole用作WebSocket服务器。每秒一次,我需要向所有连接的WS客户端广播一条消息。

天真的方法:我在启动服务器之前设置了服务器计时器$server->tick()

$this->server->tick(1000, function () {
    $message = 'hello';
    foreach ($this->server->connections as $fd) {
        $this->server->push($fd, $message);
    }
});

出现错误:

[2020-05-05 12:23:56#21985.2]错误swServer_tcp_send(ERRNO 9009) 无法在主进程中将数据发送到连接

不是从Master而是从Worker进程推送WebSocket消息的正确方法是什么?

0 个答案:

没有答案