Linux下安装开启异步redis的swoole

注:swoole作为一个标准的php扩展,安装swoole与安装其他php扩展并没有什么区别

一、安装swoole的前提条件:

(1)安装了php
(2)如果要安装async-mysql(异步mysql),则需要mysqli和mysqlnd扩展(如果没有则需要重新编译php,加上—with-mysqli —with-mysqlnd)
(3)如果要安装async-redis(异步redis),则需要有hiredis库

二、编译安装swoole

这里主要讨论一下swoole中包含异步redis的库

因为swoole的redis是依赖hiredis库的(一个redis的c客户端库)

(1)下载编译hiredis

下载地址:https://github.com/redis/hiredis

  1. wget https://github.com/redis/hiredis/archive/master.zip
  2. unzip master.zip
  3. cd hiredis-master
  4. make
(2)将编译生成的libhiredis.so文件放到系统函数库目录中(并更新系统动态链接库,不然会找不到这个库)
  1. cp libhiredis.so /usr/lib/
  2. /sbin/ldconfig
(3)将解压后的hiredis的源代码文件,即第一步解压后的文件放到系统函数库引用目录/usr/include或者/usr/local/include中
  1. cd ..
  2. mkdir /usr/local/include/hiredis
  3. mv -R ./hiredis-master/* /usr/local/include/hiredis/
(4)安装swoole扩展
  1. wget https://github.com/swoole/swoole-src/archive/master.zip
  2. unzip master.zip
  3. cd swoole
  4. ./configure --with-php-config=/usr/local/php7/bin/php-config --enable-swoole-debug --enable-sockets --enable-async-mysql --enable-async-redis --enable-openssl
  5. make
  6. make install
(5)修改php配置文件,加入swoole.so扩展,并重启php-fpm,查看扩展是否安装成功
  1. vim /usr/local/php7/lib/php.ini

加入以下内容:

  1. extension=swoole.so

三、编译参数说明:

注:安装swoole的编译参数可以参考官方wiki,也可以通过configure —help查看

  • 1、—enable-swoole-debug: 启用swoole调试模式

  • 2、—enable-sockets : 启用sockets资源

  • 3、—enable-async-mysql : 启用异步mysql

  • 4、—enable-async-redis : 启用异步redis

  • 5、—enable-openssl : 启用ssl支持

  • 6、—enable-ringbuffer : 开启RingBuffer内存池

  • 7、—enable-http2 : 开启http2的支持

  • 8、—enable-jemalloc : 启用jemalloc内存管理机制

  • 9、—enable-tcmalloc : 启用tcmalloc内存管理机制