非协程特性独立扩展 (swoole_async)

4.3版本开始我们逐渐开始移除与协程无关的模块,包括异步客户端、消息队列等。

考虑到Swoole-1.x版本目前依然有大量用户使用,因此移除模块会转到另外一个混杂扩展(swoole_async)中进行维护。

模块列表

  • 异步文件IO,如swoole_async_read
  • 异步Http/WebSocket客户端
  • 异步Redis客户端
  • 异步MySQL客户端
  • swoole_msgqueue
  • swoole_memory_pool
  • swoole_ringqueue
  • swoole_mmap
  • swoole_channel

扩展编译

git clone https://github.com/swoole/async-ext.git
cd async-src
phpize
./confiugre
make -j 4
sudo make install
  • 编译将生成swoole_async.so新扩展
  • 此扩展依赖swoole.so扩展,必须先加载swoole.so再加载swoole_async.so

配置文件

修改php.ini加载扩展。

extension=swoole.so
extension=swoole_async.so

可以通过php -m看到swooleswoole_async两个扩展。