我的编程空间,编程开发者的网络收藏夹
学习永远不晚

linux怎么安装php thread扩展

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

linux怎么安装php thread扩展

本文操作环境:Ubuntu 16.04系统、PHP7.1版、DELL G3电脑

linux怎么安装php thread扩展?

Ubuntu 下 PHP 安装 pthreads 扩展:

pthreads 是一个PHP使用多线程的扩展。这里就不再过多介绍了,相信既然都已经做过了解,不了解直接看文档吧。

文档地址:https://www.php.net/manual/zh/book.pthreads.php

这里就讲讲安装过程吧,有些曲折,也查阅了很多资料,才正式安装上。写出来自己做个记录,也给后来的朋友一个参考少踩一些坑。

安装环境

  • Ubuntu 16.04 LTS
  • Lnmp 1.4 - - 相信很多人都在用这个
  • pthreads 源码

这里需要注意,这个扩展通过 pecl install pthreads 是安装不成功的。需要自己下载源码编译安装并且,只能从 GitHub 主干分支上下载。其它的源码貌似都有问题,我就最开始就是从 http://pecl.php.net 下载,但是编译老是失败。后来查询资料说是有问题。需要从 GitHub 下载才行。

GitHub: https://github.com/krakjoe/pthreads

配置PHP环境

默认大家都是已经将 lnmp 环境安装好的,还没安装好的话,请出门左转 Google 一下。
因 pthreads 需要PHP已线程安全的方式运行,所以在编译PHP的时候需要加上 --enable-maintainer-zts 但是 lnmp 集成包默认是线程不安全的。

这里到你的 lnmp 安装目录,找到一个 lnmp.conf 文件

95c1d70941ec45936c7467f9a512cba.png

在 PHP_Modules_Options 里添加 --enable-maintainer-zts 就是我截图一样。

编译PHP

  1. 新装环境,直接按照 lnmp 的按照流程一步步按照就好。安装完成之后php 就是线程安全的了。
  2. 已安装好的lnmp 环境 这里我们可以使用 lnmp 提供的升级脚本,将php升级一下(PS:脚本没有检测当前版本号,如果我们输入当前的版本号,就是重新安装PHP)操作完成。
  3. ** 手动编译PHP ** 进入 lnmp1.4-full/class="lazy" data-src 目录(根据自己的实际情况),我的目录在 /home/class="lazy" data-src/lnmp1.4-full/class="lazy" data-src 看看有没有php 的压缩包,如果没有自己下载一个
sudo wget http://cn2.php.net/distributions/php-7.0.20.tar.bz2
tar -jxvf php-7.0.20.tar.bz2

注:地址可以自己去php官网获取,我这里给出的,是当前可用的。

继续:

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/conf.d --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-intl --enable-pcntl --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-xsl --enable-maintainer-zts
make
sudo make install

这段代码是从 lnmp1.4-full/include/php.sh 里面摘出来的,大家可以自己去研究一下。
打开phpinfo();

5e8cedac4c3bb24c68549091981abcc.png

确认 Thread Safety 是 enabled 状态.

编译pthreads 关键时刻来了

将 pthreads 源码包放到 php 源码的 ext 目录,我的目录在:lnmp1.4-full\class="lazy" data-src\php-7.0.19\ext [根据自己情况调整]
进入 pthreads 目录

phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
sudo make install

php-config 路径根据自身情况调整。如果用的是 lnmp 默认的话,就是这了

执行到这里就应该会出现 提示 pthreads.so 编译成功的提示。如果没有,请检查之前的步骤。

配置php.ini

网上一般的教程到此处之后就会说:将 pthreads.so 加入php.ini 文件重启 php-fpm 就完事了。
此处是一坑。你如果直接加入 php.ini 会发现php-fpm 启动不了了,提示无法加载 pthreads.so

正确的姿势:
将 php.ini 复制一份 命名 php-cli.ini
将 pthreads.so 放到 php.cli.ini 里面
然后 php -m | grep pthreads 看看是不是已经出现了。

到这里才能算是完成了。

注意: pthreads不要在生产环境用 有bug,自己玩玩,跑跑命令行任务可以。通过最后的安装你也发现了,只能通过 cli 方式运行。哈哈哈哈。

最后提示一下,windows 安装 pthreads 包里面有很多 demo 可以看。

windows 版本下载地址:https://windows.php.net/downloads/pecl/releases/pthreads/

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

linux怎么安装php thread扩展

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

linux怎么安装php thread扩展

Linux下安装PHPThread扩展本文详细介绍了在Linux系统上安装PHPThread扩展的步骤,支持并行执行。安装可以通过PECL或从源代码编译两种方法实现。需要确保已安装GCC或Clang编译器和pthreads库。安装后启用扩展,并使用PHP脚本测试其是否成功安装。常见问题和解决方案也包括在本文中。
linux怎么安装php thread扩展
2024-04-25

linux怎么安装php thread扩展

linux安装php thread扩展的方法:1、在lnmp安装目录中找到lnmp.conf文件;2、在“PHP_Modules_Options”里添加“--enable-maintainer-zts”;3、编译pthreads即可。
2016-01-04

linux下怎么安装php扩展

这篇文章主要介绍“linux下怎么安装php扩展”,在日常操作中,相信很多人在linux下怎么安装php扩展问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux下怎么安装php扩展”的疑惑有所帮助!接下来
2023-06-05

linux下 php怎么安装redis扩展

linux下php安装redis扩展的方法:1、下载phpredis扩展;2、通过“tar zxvf”解压;3、执行phpize;4、指定php配置路径;5、将扩展加入php配置文件php.ini中;6、重启php即可。
2021-04-05

linux php怎么安装pdo-oci扩展

linux php安装pdo-oci扩展的方法:1、安装Oracle客户端;2、进入php的源码安装包,执行make;3、在php.ini配置中添加一句“extension=pdo_oci.so”即可。
2016-12-14

Linux下怎么用php安装swoole扩展

这篇文章主要介绍了Linux下怎么用php安装swoole扩展的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Linux下怎么用php安装swoole扩展文章都会有所收获,下面我们一起来看看吧。Swoole 使
2023-06-28

Linux下的PHP怎么安装redis扩展

这篇文章主要介绍Linux下的PHP怎么安装redis扩展,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!说明:操作系统:CentOSphp安装目录:/usr/local/phpphp.ini配置文件路径:/usr/l
2023-06-28

怎么安装php ffpemg扩展

安装php ffpemg扩展的方法:1、通过“git clone https://github.com/tony2001/ffmpeg-php.git”下载“ffmpeg-php”扩展;2、通过对应版本的phpize生成configure文件;3、修改“ffmpeg_frame.c”文件;4、编译安装,然后在php.ini中添加“extension=ffmpeg.so”即可。
2023-05-14

php怎么安装ldap扩展

php安装ldap扩展的方法:1、通过“yum install PHP-ldap”在线安装ldap扩展;2、将“ldap.so”放在extensions目录下即可。
2017-05-14

PHP怎么安装fileinfo扩展

这篇文章主要介绍PHP怎么安装fileinfo扩展,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!PHP下的fileinfo函数通过在文件的给定位置查找特定的魔术字节序列,来获取文件的MIME信息。下面就和小编译器了解
2023-06-20

PHP怎么安装扩展bcmath

这篇文章主要讲解了“PHP怎么安装扩展bcmath”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP怎么安装扩展bcmath”吧!编译php时忘记添加某扩展,后来想添加扩展,但是因为安装p
2023-06-20

怎么安装php扩展-amqp

这篇文章主要介绍了怎么安装php扩展-amqp,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php是什么语言php,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hy
2023-06-14

php怎么安装kafka扩展

这篇文章主要介绍了php怎么安装kafka扩展,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、安装librdkafka# cd /usr/local/src/# git c
2023-06-15

ubuntu 怎么安装php扩展

ubuntu安装php扩展的方法:1、执行“sudo apt-get install php-gd”;2、执行“sudo apt-get install php-mbstring”。
2021-10-01

php要怎么安装扩展

这篇文章主要讲解了“php要怎么安装扩展”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php要怎么安装扩展”吧!安装扩展注意与Apache+PHP或者Nginx+PHP的运行模式不同,Wor
2023-06-20

编程热搜

目录