swoole server-tcp

set([
    'worker_num' => 4,// worker进程数  cpu1-4倍
    'max_request' => 10000,//根据内存等来设置
]);

/**
 * 监听连接进入事件
 *
 * $fd(自增) 客户端连接的唯一标识
 * $reactor_id (线程id)
 */
$serv->on('connect', function ($serv, $fd, $reactor_id) {
    echo "客户端已连接-线程:{$reactor_id},标识:{$fd}\n";
});

/**
 * 监听数据接收事件
 *
 * $fd(自增) 客户端连接的唯一标识
 * $reactor_id (线程id)
 * $data 用户发送过来的数据
 */
$serv->on('receive', function ($serv, $fd, $reactor_id, $data) {
    //send 向客户端发送数据
    $serv->send($fd, "服务器向你(线程:{$reactor_id},标识:{$fd})发送数据:" . $data . "\n");
});


/**
 * 监听连接关闭事件
 */
$serv->on('close', function ($serv, $fd) {
    echo "标识为{$fd}的客户端已关闭\n";
});

//启动服务器
$serv->start();

运行效果:


运行效果

断开其中一个连接:


断开其中一个连接

查看worker_num设置的数量


image.png

你可能感兴趣的:(swoole server-tcp)