多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] --- Swoole需要使用源码安装。暂无Windows版扩展。 ### 源码安装 ``` shell wget -O swoole.zip https://github.com/swoole/swoole-src/archive/v1.9.11.zip unzip swoole.zip cd swoole phpize ./configure make && make install ``` ### pecl安装 由于pecl是需要编译的,所以需要先安装编译器(已安装编译器可以忽略): ``` yum install -y gcc gcc-c++ make cmake bison autoconf ``` 然后: ``` pecl install swoole pecl install redis ``` pecl安装扩展完成后会提示添加so文件到php.ini。示例: ``` Build process completed successfully Installing '/usr/lib64/php/modules/swoole.so' install ok: channel://pecl.php.net/swoole-1.9.11 configuration option "php_ini" is not set to php.ini location You should add "extension=swoole.so" to php.ini ``` 添加示例: ``` [swoole] extension = /usr/lib64/php/modules/swoole.so ``` ### 版本选择 建议使用的版本(截止时间2017-6-3) ``` 稳定版:v1.9.9 预览版:v2.0.7 ``` > `1.9.x` 分支已进入特性锁定期,不再开发新功能,仅修复BUG。 最低版本: **建议`1.8.6+`。PHP7建议使用`1.9.2+`。** 建议使用的PHP版本 ``` PHP5.5或更高版本 PHP7.0.13或更高版本 ``` > 使用`TP3.1+`框架的朋友升级到`PHP7.1.0`可能会出现rewrite失效问题。建议`PHP7.0.x`系列。 快速查看当前swoole的版本: ``` php --ri swoole ``` `1.8.6~1.8.13` 都是小范围BUG修复及功能新增。其中 [`1.8.11`](https://wiki.swoole.com/wiki/page/p-1.8.11.html) 增加SIGRTMIN信号处理函数,用于重新打开日志文件。 [`1.8.6`](https://wiki.swoole.com/wiki/page/p-1.8.6.html) 版本是一个重要的BUG修复版本,主要修复了PHP7环境下HttpServer、TCPClient、HttpClient、Redis等客户端存在的内存泄漏、崩溃问题。 [`1.9.0`](https://wiki.swoole.com/wiki/page/p-1.9.0.html) 版本增加了多项新特性,修复了多个已知问题。1.9版本是100%向下兼容1.8的,用户可无缝升级。 [`1.9.1`](https://wiki.swoole.com/wiki/page/p-1.9.1.html) 修复PHP7下启用opcache导致崩溃的问题;重构`reopen log file`特性,收到`SIGRTMIN`信号后重新打开日志文件并重定向标准输出 等。 [`1.9.2`](https://wiki.swoole.com/wiki/page/p-1.9.2.html) 修复PHP7下发生`zend_mm_heap corrupted`的问题 等。 [`1.9.4`](https://wiki.swoole.com/wiki/page/p-1.9.4.html) 修复WebSocket服务器默认onRequest方法内存泄漏问题 等。 [`1.9.5`](https://wiki.swoole.com/wiki/page/p-1.9.5.html) 增加pid_file选项,在Server启动时将主进程ID写入指定的文件 等。 [`1.9.6`](https://wiki.swoole.com/wiki/page/p-1.9.6.html) 修复添加超过1万个以上定时器时发生崩溃的问题;增加swoole_serialize模块,PHP7下高性能序列化库;修复监听UDP端口设置onPacket无效的问题 等。 [`1.9.9`](https://wiki.swoole.com/wiki/page/p-1.9.9.html) 修复Http2客户端POST数据时协议错误问题 等。 [`1.9.11`](https://wiki.swoole.com/wiki/page/p-1.9.11.html) 修复WebSocket服务器onOpen回调函数存在内存泄漏的问题;修复Http服务器文件上传在5.6版本发生崩溃的问题;优化添加Task和Timer的定时器性能,提升分支预测成功率 等。