php7支持多线程pthreads

1、安装多线程库:

cd /usr/local/services/php-7.0.7/bin/pecl install pthreads

或手动编译安装:

wget http://www.xxx.com/pecl.php.net/get/pthreads-3.1.6.tgz
tar -zxvf pthreads-3.1.6.tgz
cd pthreads-3.1.6
/usr/local/services/php-7.0.7//bin/phpize
./configure --with-php-config=/usr/local/services/php-7.0.7/bin/php-config
make && make install

2、配置文件
编辑/usr/local/services/php-7.0.7/etc/php.ini加上extension=pthreads.so

运行查看安装是否成功
/usr/local/services/php-7.0.7/bin/php -m

3、php-fpm
支持 PHP 7 的 pthreads v3 只支持通过 cli 命令行来调用,不支持其他的 sapi,所以
执行/usr/local/services/php-7.0.7/sbin/php-fpm 出错:

[23-Jun-2018 02:14:44 UTC] PHP Fatal error:  The fpm-fcgi SAPI is not supported by pthreads in Unknown on line 0
[23-Jun-2018 02:14:44 UTC] PHP Fatal error:  Unable to start pthreads module in Unknown on line 0

解决:
CLI模式下,php会优先读取php-cli.ini,如果没找到会使用php.ini
【1】cp php.ini php-cli.ini 添加扩展pthreads
extension=pthreads.so
【2】编辑原来的php.ini文件注释掉pthreads扩展
;extension=pthreads.so

这样CLI模式下php-cli.ini生效,而php-fpm不会读php-cli.ini

你可能感兴趣的:(php7支持多线程pthreads)