swoole安装
环境:centos7+docker+php7.4-fpm增加swoole扩展
docker exec -it php bash # 第一步进入php容器
php -m # 查看php容器扩展是否有swoole
docker-php-source extract
docker-php-ext-install swoole # 尝试安装swoole,这里报错,提示找不到扩展包
quit #退出容器
下面我们获取swoole包,并放入php容器的扩展目录下
swoole安装包获取地址:https://pecl.php.net/package/swoole
cd /docker/swoole
wget https://pecl.php.net/get/swoole-4.6.7.tgz #下载你需要的swoole版本扩展包
tar zxvf swoole-4.6.7.tgz #解压swoole扩展包
docker cp /docker/swoole/swoole-4.6.7 php:/usr/src/php/ext/swoole # 将swoole包复制到php容器
docker exec -it php bash # 再次进入php容器
docker-php-ext-install swoole # 安装swoole扩展,等待安装…
php -m # swoole已经在扩展里,安装完成。
php --ri swoole # 可以查看swoole详细信息
swoole是什么
Swoole 是一个使用 C++ 语言编写的基于异步事件驱动和协程的并行网络通信引擎,为 PHP 提供协程、高性能网络编程支持。提供了多种通信协议的网络服务器和客户端模块,可以方便快速的实现 TCP/UDP服务、高性能Web、WebSocket服务、物联网、实时通讯、游戏、微服务等,使 PHP 不再局限于传统的 Web 领域。
swoole的优势
- 常驻内存,避免重复加载带来的性能损耗,提升海量性能
- 协程异步,提高对 I/O 密集型场景并发处理能力(如:微信开发、支付、登录等)
- 方便地开发 Http、WebSocket、TCP、UDP 等应用,可以与硬件通信
XdeBug安装
环境:centos7+docker+php7.4-fpm增加xdebug扩展
下面我们获取xdebug包,并放入php容器的扩展目录下
xdebug安装包获取地址:https://xdebug.org/download#releases
cd /docker/php
wget https://xdebug.org/files/xdebug-3.0.4.tgz #下载你需要的xdebug版本扩展包
tar zxvf xdebug-3.0.4.tgz #解压xdebug扩展包
docker cp /docker/php/xdebug-3.0.4 php:/usr/src/php/ext/xdebug # 将xdebug包复制到php容器
docker exec -it php bash # 进入php容器
docker-php-ext-install xdebug # 安装xdebug扩展,等待安装…
php -m # xdebug已经在扩展里,安装完成。
php --ri xdebug # 可以查看xdebug详细信息
php中安装amqp扩展
docker exec -it php bash
安装amqp之前需要先安装rabbitmq-c扩展
apt-get update
apt-get install wget
cd /home
wget https://github.com/alanxz/rabbitmq-c/releases/download/v0.8.0/rabbitmq-c-0.8.0.tar.gz
tar -zxvf rabbitmq-c-0.8.0.tar.gz
cd rabbitmq-c-0.8.0
./configure --prefix=/usr/local/rabbitmq-c
make && make installhttps://pecl.php.net/package-search.php # 搜索需要的包https://pecl.php.net/get/amqp-1.10.2.tgz # amqp 包下载地址cd /homewget https://pecl.php.net/get/amqp-1.10.2.tgztar -zxvf amqp-1.10.2.tgzcp -r amqp-1.10.2 /usr/src/php/ext/amqpcp /home/rabbitmq-c-0.8.0/librabbitmq/amqp_ssl_socket.h /usr/src/php/ext/amqp/docker-php-ext-configure amqp --with-php-config=/usr/local/bin/php-config --with-librabbitmq-dir=/usr/local/rabbitmq-cdocker-php-ext-install amqpphp -m | grep amqp
php中安装pdo_mysql扩展
docker-php-ext-install pdo pdo_mysql
php中安装redis扩展
(推荐)安装方法一:源码包安装
源码包获取地址:https://github.com/phpredis/phpredis/releases
cd /docker/php
wget https://github.com/phpredis/phpredis/archive/refs/tags/5.3.4.tar.gz #下载你需要的phpredis版本扩展包
tar -zxvf 5.3.4.tar.gz #解压phpredis扩展包
docker cp /docker/php/phpredis-5.3.4 php:/usr/src/php/ext/redis # 将phpredis包复制到php容器
docker exec -it php bash # 进入php容器
docker-php-ext-install redis # 安装redis扩展,等待安装…
php -m # redis已经在扩展里,安装完成。
php --ri redis # 可以查看redis详细信息
安装方法二:pecl
pecl search redis # 搜索是否有redis包
pecl install redis # 可能存到各种缺乏依赖包报错,当前根据提示缺少 igbinary和 libzstd
最后安装步骤如下:
pecl install igbinary
apt-get install libzstd -y
pecl install redis
find / -name php.ini # 查找php配置文件目录
vim /usr/local/ext/php/php.ini # 修改配置文件,加入redis.so igbinary.so
extension=redis.so
extension=igbinary.so
php -m 查看扩展是否成功加载