php使用swoole做websocket服务端

2020-04-07 09:29:21

直接上代码

$server = new \Swoole\Websocket\Server(“0.0.0.0”, 9999);

$server->set(array(

'heartbeat_idle_time'      => 120,
'heartbeat_check_interval' => 60,
'package_max_length' => 8192,

));

\(server->on('open', function(\)server, $req) {

echo "connection open: {$req->fd}\n";

});

\(server->on('message', function(\)server, $frame) {

$server->push($frame->fd, $frame->data);

});

\(server->on('close', function(\)server, $fd) {

echo "connection close: {$fd}\n";

});

$server->start();


目前看,websocket不需要处理粘包问题,所以没设置open_length_check或者open_eof_check参数。

文档地址:https://wiki.swoole.com/#/websocket_server