Swoole学习(三)Swoole之UDP服务器的创建

环境:Centos6.4,PHP环境:PHP7

复制代码
<?php
//创建UCP服务器(UDP服务器相对于TCP服务器通信更可靠些)
/**
 * $host 是swoole需要监听的ip,如果要监听本地,不对外服务,那么就是127.0.0.1;如果我要监听外网,比如我本地是192.168.9.155,我可以监听这个IP,如果本机分配的192.168.9.155的IP,外网在访问IP的时候,就可以相应对应的TCP服务。当然也可以同时监听多个IP
 */
/**
 * $port端口号。如果选择1024以下的端口号,需要root权限,如果swoole和php没有root权限,那就行不通。这里是9502端口
 */
//$mode默认是 SWOOLE_PROCESS 多进程方式
//$sock默认是SWOOLE_SOCK_TCP 默认TCP服务,因为这里是UDP,需要改为UDP

$host = '0.0.0.0';
$port = 9502;
$server = new swoole_server($host, $port, SWOOLE_PROCESS, SWOOLE_SOCK_UDP);

//监听数据接收事件
$server->on('packet', function($server, $data, $fd){ //$server是$server句柄,$fd是客户端信息,$data是接收到的数据
    //发送数据到相应的客户端,也就是信息反馈
    $server->sendto($fd['address'], $fd['port'], "Server: $data");
    var_dump($fd);
});


$server->start();
复制代码

然后进入终端对应的文件所在目录,执行命令(这里文件名是index2.php)

出现此状态,没有报错,说明开启成功了。

# ps -ajft  //查看进程状态

开始测试

查看服务端

OK~

 

posted @   温柔的风  阅读(851)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示