123456789101112131415161718192021222324252627282930313233343536 |
- <?php
- use Swoole\Server;
- $server = new Server('http://cloud_device.qingyaokeji.com/', 9501, SWOOLE_PROCESS, SWOOLE_SOCK_TCP);
- $server->set([
- 'worker_num' => 1, //工作进程数
- 'task_worker_num' => 5, //任务工作进程数
- 'log_file' => '/www/server/file.log', //日志文件目录
- // 'task_use_object' => true, //用于设置是否使用面向对象风格的 Task 回调格式。
- 'max_connection' => 3, //最大连接数
- // 'upload_tmp_dir' => '/path/to/tmp/dir', //上传文件的临时存储路径
- // 'daemonize' => true, //守护进程
- ]);
- //注册一个回调函数,当有客户端连接到服务器时触发。回调函数内的代码会在客户端连接时执行。
- $server->on('connect', function ($server, $fd) {
- echo "Client {$fd} connected.\n";
- });
- //注册一个回调函数,当服务器从已连接的客户端接收数据时触发。回调函数内的代码会在接收到客户端发送的数据时执行
- $server->on('receive', function ($server, $fd, $from_id, $data) {
- echo "Received data from client {$fd}: {$data}\n";
- $server->send($fd, "Server received: {$data}");
- });
- //注册一个回调函数,当服务器与客户端断开连接时触发。回调函数内的代码会在客户端断开连接时执行。
- $server->on('close', function ($server, $fd) {
- echo "Client {$fd} closed.\n";
- });
- $server->on('Task', function ($task) {
- // 处理任务回调逻辑
- echo "Client222222222222";
- });
- $server->start();
|