什么是 Swoole?
Swoole 是一个高性能的网络通信引擎,提供了多种的网络通信协议。例如 UDP、TCP、Http 和 WebSocket 等各种通信协议。可以使完全同步的代码实现异步执行程序,例如异步 Redis、异步 MySQL、协程 Http 等异步 IO 操作。
如何安装 Swoole
Swoole 作为 PHP 的一个扩展库,在使用的过程中也和其他的函数库并无什么使用上的差别,但这个库又不是一个普通的库。这个库分为服务端和客户端,首先我们需要去通过内置的函数启动服务,然后在去请求服务。
安装的步骤也很简单,和其他的 PHP 函数库操作并差别,直接可以参考安装步骤 ,按照教程安装完成之后,我们就可以正常使用啦!
第一个 Demo
该 demo 是一个 TCP 服务的简单示例。 1.服务端代码
1 |
|
2.客户端代码
1 |
|
如何操作第一个 Demo
1.启动我们的 Swoole,服务端的代码是 PHP 文件编写,所以我们用 cli 模式来启动服务(在 Swoole 中绝大部分的操作都是 cli 模式)
1 | php index.php |
这样 Swoole 服务就启动了。接下来,查看我们设置的 9502 端口是否被开启,来验证我们的服务是否真正的被打开了。
1 | ps -anp | grep 9502 |
接下来,我们测试一个客户端向服务器端发送数据.执行客户端代码,这个案例需要结合上面的服务端和客户端的代码便知晓.
1 | php index.php |
除了使用 PHP 代码当客户端使用外,TCP 协议还支持 telnet 连接,下面使用 telnet 测试连接.
1 | telnet 127.0.0. 9502 |
如果出现下面的结果,则表示能够正常连接,同时我们也可以输入任意内容,服务端接收到数据之后就会输出到终端.
测试多个连接.在 Swoole 中,可以开启一个服务多个客户端,因此我们只需要启动一个 Swoole 服务,创建多个 telnet 连接也是可行的.我们打开多个窗口去使用 telnet 连接服务端,此时会看到服务端终端输出如下信息.
本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!