PHP 的异步并行 C 扩展Swoole-1.8.0版本发布。

jackxiang 2016-1-27 17:20 | |
背景:作为swoole顾问,当然需要对新版本发布作下相关的描述,一直想rango推rpc,此次暂搁置了,底层实现对RPC性能提升没有多大意义,swoole应该专注php的弱点,而不是把所有的东西都封装到底层,成为大杂会。觉得能用PHP实现的不再实现,定位上只是对PHP功能的增强。总之,1.8.0 是一个里程碑的版本。

最好要在PHP版本V5.4以上运行,对各种DB和缓存及服务器客户端的异步支持以高效利用IO:
增加原生异步 MySQL 客户端
增加原生异步 Redis 客户端,基于 Redis 官方提供的 hiredis 库
增加原生异步 Http 客户端
增加原生异步 WebSocket 客户端支持
——————————————————————————————————————————
....各种优化及bug修改相关特性融入内核....
重构底层 swClient,异步 TCP 客户端实现放到 swoole 内核中
增加 swoole_client->reuse 属性,SWOOLE_KEEP 长连接模式下标识是否为复用的连接
修改Bug:重构定时器,修复after、tick定时器偶然出现的core dump的问题
新加特性:异步Redis客户端
预告一下:1.8.1 版本,即将增加 命名空间的类别名
计划搁置:RPC暂时没有开发计划,因为这个东西PHP代码就能实现,没必要底层去支持。
——————————————————————————————————————————
Swoole-1.8.0版本增加了对异步Redis客户端的支持,基于redis官方提供的hiredis库实现。Swoole提供了__call魔术方法,来映射绝大部分Redis指令。

编译安装hiredis

使用Redis客户端,需要安装hiredis库。下载hiredis源码后,执行

make -j
sudo make install
sudo ldconfig
hiredis下载地址:https://github.com/redis/hiredis/releases
启用异步Redis客户端

编译swoole是,在configure指令中加入--enable-async-redis

./configure --enable-async-redis
make clean
make -j
sudo make install

来自:http://wiki.swoole.com/wiki/page/521.html
更多:http://www.oschina.net/news/70266/swoole-1-8-0

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/8465/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2016-1-27 17:38
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]