swoole是一个PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。
Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。
Swoole可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。 使用PHP+Swoole作为网络通信框架,可以使企业IT研发团队的效率大大提升,更加专注于开发创新产品。
注意事项:
1、server.php中的ip地址必须是外网可访问地址 123.57.232.99,不能为localhost
1、安装
全部版本链接:https://pecl.php.net/package/swoole
# wget https://github.com/swoole/swoole-src/archive/swoole-1.7.6-stable.tar.gz
# tar zxvf swoole-1.7.6-stable.tar.gz
# cd swoole-src-swoole-1.7.6-stable
# /usr/local/php/bin/phpize
#./configure --enable-zip --with-php-config=/usr/local/php/bin/php-config
# make
# make install
提示:
Build complete.
Don’t forget to run ‘make test’.
Installing shared extensions: /usr/lib64/php/modules/
说明安装成功
2、php加载swoole扩展
extension=/xxx/xxx/php5.6/lib/php/extensions/no-debug-non-zts-20131226/swoole.so
3、重启服务
service php-fpm restart
4、测试,查看phpinfo信息,如下图所示:
5、代码测试
server.php代码:
# telnet 123.57.232.99 55152
- 1
Trying 123.57.232.99…
Connected to 123.57.232.99.
Escape character is ‘^]’.
rr
Swoole: rr
测试
Swoole: 测试
官网方式参考(php7.2.19)使用了这个方式:
安装Swoole框架和扩展
Swoole扩展
到GitHub首页下载Swoole扩展源码,地址:https://github.com/swoole/swoole-src 下载后按照标准的PHP扩展编译方式进行编译和安装。一般是
phpize
./configure
make install
编译安装完后,修改php.ini加入extension=swoole.so开启swoole扩展。也可以通过dl(‘swoole.so’)动态载入,推荐修改php.ini。
下载swoole_framework源码,地址:https://github.com/swoole/framework。放置到您的workspace目录中即可。swoole_framework是PHP代码,只需要require/include即可,无需编译和安装。
git clone https://github.com/swoole/swoole-src.git
cd swoole-src/
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config
make
make install
ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/
vi /usr/local/php/etc/php.ini
加入swoole.so
/etc/init.d/php-fpm reload