PHP7多线程搭建教程
一直想写个爬虫于是就用PHP写了一个众所周知PHP并不支持多线程所以爬行效率很低同时运行10个进程内存和CPU占用率很高开大概10个进程爬行对爬行时间还进行优化但我的mac pro还是差不多就down掉了。 于是开始采用PHP7结合pthreads多线程工具经测试稳定性、效率、内存和cpu的占用各方面都很满意。 下边就介绍PHP7的多线程环境搭建。安装PHP7以下所有命令在root用户下执行 下载PHP7目前最新版本是7.0.3根据情况自行选择版本PHP5.4以后的各版本也是支持的。123wget http://ar2.php.net/get/php-7.0.3.tar.gz/from/this/mirror -O php.tar.gztar xvfz php.tar.gzcd php编译安装。选项自行选择可以让PHP多版本共存。但maintainer-zts是必须的如果只做爬虫除了curl其它扩展基本不用安装。遇到无法安装的自行查找解决例如我安装的时候遇到iconv没有找到那直接就without了。123./configure --prefix/usr/local/php7 --without-iconv --enable-maintainer-zts --with-curlmakemake install安装完成然后开始安装pthreads。用pecl安装是超级简单的。12cd /usr/local/php7/bin./pecl install pthreads安装完成配置文件在/usr/local/php7/lib/目录下新建php.ini文件初始文件可在php源码的根目录找到php.ini-production 然后编辑php.ini在末尾增加1extensionpthreads.so安装完成查看安装是否成功运行1/usr/local/php7/bin/php -m查看模块支持列表如果有pthreads存在则说明环境创建成功。 或者编辑文件test.php12345678?php$threadnewclassextendsThread {publicfunctionrun() {echoHello World\n;}};$thread-start() $thread-join();?成功输出Hello World说明成功。