日韩在线观看-日韩在线成人-日韩在线不卡视频-日韩在线不卡视频-国产精品99-国产精品99

php多進程

php多進程是在開發業務邏輯層面,并行處理多個任務的一種開發方式,例如,需要給10萬給會員發送郵件,每個郵件需要處理1秒,如果是一個進程處理,就得10萬*1秒才能處理完,但是,如果開啟多個進程同時處理,例如:10個進程,那只需要10萬*1/10秒就能處理完成,縮短了10倍的時間

多進程的概念

前面有講到,多進程主要是在開發業務邏輯層面,并行處理多個任務的開發方式,什么叫做開發業務邏輯層面呢?
在上面我們有講到,php-fpm是fast-cgi的進程管理器,啟動之后會啟動多個fast-cgi進程,等待任務處理

在php-fpm軟件層面,fast-cgi的多個進程就屬于多進程處理,但是,當用戶發起請求,由nginx交給php-fpm處理請求時,在這個層面,每個請求其實只占有一個php fast-cgi進程進行處理邏輯,對于運行業務邏輯的這個php進程,其實是單進程的.

同理,當我們直接運行一個php文件時,默認是只開啟了一個php進程進行運行php的代碼

多進程的開發場景

在傳統web模式下,php一向是單進程處理業務邏輯,只有在php-cli模式下,用于處理異步任務,作為網絡服務器時,才可能用到多進程處理,所以,大部分phper都對php多進程的概念不熟悉

偽多進程

在上面講到,在傳統web下,一個請求就是一個進程,我們可以通過這個方法,實現理論上的多進程:

  • 在一個php文件中,寫消費任務邏輯,比如給隊列中的會員id發送郵件(注意超時,注意用戶端關閉不終止腳本)
  • 用網頁訪問這個php文件,相當于開啟了一個進程處理
  • 再開第二個網頁訪問這個文件,相當于又開啟了一個進程
  • 如此重復,我們可以得到n個處理郵件的進程
  • 針對于消費任務邏輯層面,我們已經是開啟了多進程在處理了
主站蜘蛛池模板: 色在线视频网站| 抓特务| 演员孙阳个人简介身高| 昵称大全2024最新版| 张发财| 大众故事1974意大利| river flows in you钢琴谱| 少年派1主演名单| jayden jaymes| 蜜桃成熟时在线看| 黑暗时刻| 国产伦理女村支书| 黑丝高跟在线| 抖音主页| 无懈可击图片| 我的神我要赞美你| 女生被艹在线观看| 小黑电影| 任港秀| 情人意大利| 红色诗集诗配画竖版| 全家福演员表| 大太监李莲英| 菠萝菠萝蜜视频在线免费观看| 两人生猴子免费观看完整版视频| 托比蜘蛛侠| 社会好全部歌词| 白洁少妇在线| 邪教档案| 隐藏的秘密电影免费观看全集| 听说 电影| 迷夜电影| 江苏体育频道直播| 小小少年电影简介| 国内自拍99| 尸家重地演员表| 艳堂| 完美情人| 陈一龙是哪部电视剧| 戚薇床戏| 红灯区免费看|