php语言

PHP7多线程搭建教程详解 

时间:2025-05-03 05:51:15 php语言 我要投稿
  • 相关推荐

PHP7多线程搭建教程详解 

  一直想写个爬虫,于是就用PHP写了一个,众所周知PHP并不支持多线程,所以爬行效率很低,同时运行10个进程,内存和CPU占用率很高,开大概10个进程爬行,对爬行时间还进行优化,但我的mac pro还是差不多就down掉了。 于是开始采用PHP7结合pthreads多线程工具,经测试,稳定性、效率、内存和cpu的占用各方面都很满意。 下边就介绍PHP7的多线程环境搭建。

  安装PHP7

  以下所有命令在root用户下执行 下载PHP7,目前最新版本是7.0.3,根据情况自行选择版本,PHP5.4以后的各版本也是支持的。

  ?

  1

  2

  3

  wget http://ar2.php.net/get/php-7.0.3.tar.gz/from/this/mirror -O php.tar.gz

  tar xvfz php.tar.gz

  cd php

  编译安装。

  选项自行选择,可以让PHP多版本共存。但maintainer-zts是必须的,如果只做爬虫,除了curl,其它扩展基本不用安装。遇到无法安装的自行查找解决,例如我安装的时候遇到iconv没有找到,那直接就without了。

  ?

  1

  2

  3

  ./configure --prefix=/usr/local/php7 --without-iconv --enable-maintainer-zts --with-curl

  make

  make install

  安装完成

  然后开始安装pthreads。用pecl安装是超级简单的。

  ?

  1

  2

  cd /usr/local/php7/bin

  ./pecl install pthreads

  安装完成

  配置文件

  在/usr/local/php7/lib/目录下新建php.ini文件,初始文件可在php源码的根目录找到php.ini-production 然后编辑php.ini,在末尾增加

  ?

  1

  extension="pthreads.so"

  安装完成

  查看安装是否成功

  运行

  ?

  1

  /usr/local/php7/bin/php -m

  查看模块支持列表,如果有pthreads存在则说明环境创建成功。 或者编辑文件test.php

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  <?php

  $thread = new class extends Thread {

  public function run() {

  echo "Hello World\n";

  }

  };

  $thread->start() && $thread->join();

  ?>

  成功输出Hello World说明成功。

【PHP7多线程搭建教程详解 】相关文章:

java多线程教程04-22

PHP环境搭建教程08-09

PHP7的异常处理详解05-10

PHP安装threads多线程扩展基础教程03-22

PHP7错误处理机制详解介绍07-20

Java 多线程之synchronized关键字详解05-28

关于多线程基本概念的java基本教程参考01-28

php三种实现多线程类似的详解08-07

计算机Dreamwaver使用教程:本地站点的搭建与管理06-13