1.查看安装的swoole版本
[root@iZ2zedsf2i1n3fvo7zc64kZ ~]# php --ri swoole
swoole
Swoole => enabled
Author => Swoole Team <team@swoole.com>
Version => 4.8.13
Built => May 24 2023 10:22:18
coroutine => enabled with boost asm context
epoll => enabled
eventfd => enabled
signalfd => enabled
cpu_affinity => enabled
spinlock => enabled
rwlock => enabled
pcre => enabled
zlib => 1.2.7
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled
async_redis => enabled
Directive => Local Value => Master Value
swoole.enable_coroutine => On => On
swoole.enable_library => On => On
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => Off => Off
swoole.unixsock_buffer_size => 8388608 => 8388608
2.tcp服务
[root@iZ2zedsf2i1n3fvo7zc64kZ ~]# cat tt.php
<?php
//创建Server对象,监听 127.0.0.1:9501 端口。
$server = new Swoole\Server('127.0.0.1', 9503);
//监听连接进入事件。
$server->on('Connect', function ($server, $fd) {
echo "Client: Connect.\n";
});
//监听数据接收事件。
$server->on('Receive', function ($server, $fd, $reactor_id, $data) {
$server->send($fd, "Server: {$data}");
});
//监听连接关闭事件。
$server->on('Close', function ($server, $fd) {
echo "Client: Close.\n";
});
//启动服务器
$server->start();
?>
3.启动服务
[root@iZ2zedsf2i1n3fvo7zc64kZ ~]# php tt.php
Client: Connect.
4.客户端连接服务测试
[root@iZ2zedsf2i1n3fvo7zc64kZ ~]# telnet 127.0.01 9503
Trying 127.0.0.1...
Connected to 127.0.01.
Escape character is '^]'.
gjp 发送数据
Server: gjp 服务器返回数据