<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] # php 多進程 ****** php 多進程是在開發業務邏輯層面,并行處理多個任務的一種開發方式,例如,需要給10萬個會員發送郵件,每個郵件需要處理1秒,如果是一個進程處理,就得10萬\*1秒才能處理完,但是,如果開啟多個進程同時處理,例如:10個進程,那只需要10萬\*1/10秒就能處理完成,縮短了10倍的時間。 <br /> ## 多進程的概念 前面有講到,多進程主要是在開發業務邏輯層面,并行處理多個任務的開發方式,什么叫做開發業務邏輯層面呢? 在上面我們講到,php-fpm 是 fast-cgi 進程進行處理邏輯,對于運行業務邏輯的這個 php 進程,其實是單進程的。 在 php-fpm 軟件層面,fast-cgi 的多個進程就屬于多進程處理,但是,當用戶發起請求,由 nginx 交給 php-fpm 處理請求時,在這個層面,每個請求其實只占有一個 php fast-cgi 進程進行處理邏輯,對于運行業務邏輯的這個 php 進程,其實是單進程的。 同理,當我們直接運行一個 php 文件時,默認是只開啟一個 php 進程進行運行 php 的代碼。 <br /> ## 多進程的開發場景 在傳統 web 模式下,php 一向是單進程處理業務邏輯,只有在 php-cli 模式下,用于處理異步任務,作為網絡服務器時,才能用到多線程處理,所以,大部分 phper 都對 php 多進程的概念不熟悉。 <br /> ## 偽多進程 在上面講到,在傳統 web 下,一個請求就是一個進程,我們可以通過這個方法,實現理論上的多進程: * 在一個 php 文件中,寫消費任務邏輯,比如給隊列中的會員 id 發送郵件(注意超時,注意用戶端關閉不終止腳本) * 用網頁訪問這個 php 文件,相當于開啟了一個進程處理 * 再開第二個網頁訪問這個文件,相當于又開啟了一個進程 * 如此重復,我們可以得到n 個處理郵件的進程 * 針對于消費任務邏輯層面,我們已經是開啟了多進程在處理了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看