安装php扩展pthreads实现PHP多线程

下面介绍两种编译方式:

1、在已有的PHP上编译pthreads扩展

注:需要动态加载pthreads模块,之前在编译php时必须启用--enable-maintainer-zts;否则需要重新编译PHP。

pthreads源码包下载地址:http://pecl.php.net/package/pthreads

tar xf pthreads-1.0.0.tgz

cd pthreads-1.0.0

phpize

./configure  --enable-pthreads --with-php-config=/usr/local/php/bin/php-config

make && make install

2、重新编译PHP,加载pthreads


tar xf php-5.5.8.tar.gz

tar xf pthreads-1.0.0.tgz

mv pthreads-1.0.0  php-5.5.8/ext/pthreads  将pthreads解压,移动到php/ext/下,并改名为pthreads;

来到php源码目录

./buildconf  --force

./configure --help | grep thread

是否能看到--enable-threads,如果没有则执行:

rm -rf aclocal.m4

rm -rf autom4te.cache/

./buildconf --force

初始化编译配置:

./configure --prefix=/usr/local/php --enable-opcache --with-config-file-path=/etc --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-fpm --enable-pthreads --enable-fastcgi --enable-static --enable-inline-optimization --enable-sockets --enable-wddx --enable-zip --enable-calendar --enable-bcmath --enable-soap --with-zlib --with-xmlrpc --enable-mbstring --without-sqlite --with-curl --enable-ftp --with-mcrypt  --with-freetype-dir=/usr/local/freetype.2.1.10 --with-jpeg-dir=/usr/local/jpeg.6 --with-png-dir=/usr/local/libpng.1.2.50 --disable-ipv6 --disable-debug --with-openssl --enable-maintainer-zts --disable-safe-mode --disable-fileinfo

make && make install

cp php.ini-production /etc/php.ini

install -v -m755 ./php-5.5.7/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm

启动php-fpm

/etc/init.d/php-fpm start

测试,查看phpinfo输出

官方文档:http://docs.php.net/manual/en/pthreads.installation.php#113019

时间: 2024-10-13 20:59:53

安装php扩展pthreads实现PHP多线程的相关文章

Windows下PHP多线程扩展pthreads的安装

pthreads扩展安装步骤 1.查看phpinfo() 获取PHP版本号及位数(x86表示32位,x64表示64位).编译器版本.PHP配置文件加载所在位置等.如下图所示: 2.pthreads扩展下载地址:http://windows.php.net/downloads/pecl/releases/pthreads/ 3.在扩展列表中找到对应版本 4.php_pthreads-2.0.9-5.5-ts-vc11-x86.zip参数详解 2.0.9代表pthreads的版本号 5.5代表php

php安装swoole扩展

编译安装 Swoole扩展是按照php标准扩展构建的.使用phpize来生成php编译配置,./configure来做编译配置检测,make进行编译,make install进行安装. 请下载releases版本的swoole,直接从github主干上拉取最新代码可能会编译不过 如果当前用户不是root,可能没有php目录的写权限,安装时需要sudo或者su 如果是在git分支上直接git pull更新代码,重新编译前务必要执行make clean 安装准备 安装swoole前必须保证系统已经安

vscode安装golint扩展失败

环境: win7 64位系统 问题: 安装完vscode,打开.go文件时,vscode会推荐安装go扩展 go安装完成后提示下载依赖工具 go get -u -v github.com/nsf/gocode go get -u -v github.com/rogpeppe/godef go get -u -v github.com/golang/lint/golint go get -u -v github.com/lukehoban/go-outline go get -u -v sourc

wamp环境PHP安装mongodb扩展

pecl的mongodb扩展链接我们很多开发工作都要在windows下进行,但是在windows下给这些脚本程序安装一些插件扩展都比较麻烦,没有办法像linux环境一样一行命令完成,这里我在为PHP安装mongodb扩展的时候遇到了一些问题,特此写一遍wamp安装php扩展的教程. 1.下载mongodb扩展 下载windows环境下php的mongodb扩展. windows下的php的扩展一般都是dll文件,mongodb的php扩展在这里下载: http://pecl.php.net/pa

【php】安装mysql扩展

因为在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 错误信息:Fatal error: Uncaught Error: Call to undefined function mysql_connect() 发现如果php和mysql都已经安装完成了,可以使用phpize工具手动编译生成mysql.so扩展来解决 下面是操作步骤: 1.进入php源码的ext/mysql目录 cd /usr/local/src/

安装memcached扩展

php扩展需要到一个专门的网站查找扩展包,这个网站就是http://pecl.php.net/  这是一个php扩展包的网站,可以在这个网站上找到php关于memcached的扩展包,搜索memcached以后,我下载了memcached-2.2.0.tgz,接下来我们正式进入安装memcached扩展的过程(好像已经说了很多废话了--不管了,反正也没人看我的博客) 先下载libmemcached: wget  https://launchpad.net/libmemcached/1.0/1.0

Centos7下安装php-redis扩展及简单使用

前言: 在本篇博客中,我将给大家介绍如何在Centos7上安装PHP-Redis扩展以及一些简单的实用,关于如何在Centos上安装redis的,可以参考我的上一篇博客 Redis在Centos7上的安装部署 想要在php中操作redis,那就必须安装php-redis扩展,就比如MySQL一样,php想要操作mysql数据库的话,就必须安装mysql扩展,只是在php安装中就默认安装了mysql扩展了. 步骤一:下载解压 下载:https://github.com/nicolasff/phpr

PHP性能之语言性能优化:安装VLD扩展——检测性能

使用Linux命令安装 //下载安装包 wget http://pecl.php.net/get/vld-0.14.0.tgz //解压包 tar zxvf vld-0.14.0.tgz //进入编译.安装目录 cd vld-0.14.0/ //扩展PHP的扩展木块 phpize //使用locate找到php-config路径 locate php-config 如果提示没有该命令,则运行如下命令 yum -y install mlocate updatedb //更行数据,即可用 //配置编

Centos7安装php-redis扩展

前言: 在本篇博客中,我将给大家介绍如何在Centos7上安装PHP-redis扩展以及一些简单的实用,关于如何在Centos上安装redis的,可以参考我的上一篇博客 Redis在Centos7上的安装部署 想要在php中操作redis,那就必须安装php-redis扩展,就比如MySQL一样,php想要操作mysql数据库的话,就必须安装mysql扩展,只是在php安装中就默认安装了mysql扩展了. 步骤一:下载解压 下载:https://github.com/nicolasff/phpr