<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            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

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看