国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > PHP-FPM是個什么東西?

PHP-FPM是個什么東西?

來源:千鋒教育
發布人:xqq
時間: 2023-10-11 18:07:30 1697018850

一、PHP-FPM是什么

PHP-FPM(PHP FastCGI Process Manager)意:PHP FastCGI 進程管理器,用于管理PHP 進程池的軟件,用于接受web服務器的請求。
PHP-FPM提供了更好的PHP進程管理方式,可以有效控制內存和進程、可以平滑重載PHP配置。

(1). 為什么會出現php-fpm

fpm的出現全部因為php-fastcgi出現。為了很好的管理php-fastcgi而實現的一個程序

(2). 什么是php-fastcgi

php-fastcgi 只是一個cgi程序,只會解析php請求,并且返回結果,不會管理(因此才出現的php-fpm)。

(3)為什么不叫php-cgi

其實在php-fastcgi出現之前是有一個php-cgi存在的,只是它的執行效率低下,因此被php-fastcgi取代。

(4)那fastcgi和cgi有什么區別呢?

親們,這區別就大了,當一個服務web-server(nginx)分發過來請求的時候,通過匹配后綴知道該請求是個動態的php請求,會把這個請求轉給php。

在cgi的年代,思想比較保守,總是一個請求過來后,去讀取php.ini里的基礎配置信息,初始化執行環境,每次都要不停的去創建一個進程,讀取配置,初始化環境,返回數據,退出進程,久而久之,啟動進程的工作變的乏味無趣特別累。

當php來到了5的時代,大家對這種工作方式特別反感,想偷懶的人就拼命的想,我可不可以讓cgi一次啟動一個主進程(master),讓他只讀取一次配置,然后在啟動多個工作進程(worker),當一個請求來的時候,通過master傳遞給worker這樣就可以避免重復勞動了。于是就產生了fastcgi。

(5)fastcgi這么好,啟動的worker用完怎么辦?
當worker不夠的時候,master會通過配置里的信息,動態啟動worker,等空閑的時候可以收回worker

(6)到現在還是沒明白php-fpm 是個什么東西?
就是來管理啟動一個master進程和多個worker進程的程序.

PHP-FPM 會創建一個主進程,控制何時以及如何將HTTP請求轉發給一個或多個子進程處理。PHP-FPM主進程還控制著什
么時候創建(處理Web應用更多的流量)和銷毀(子進程運行時間太久或不再需要了)
PHP子進程。PHP-FPM進程池中的每個進程存在的時間都比單個HTTP請求長,可以處
理10、50、100、500或更多的HTTP請求。

延伸閱讀:

二、CGI是什么

CGI(Common Gateway Interface,CGI)通用網關接口, 是Web 服務器運行時外部程序的規范,按CGI 編寫的程序可以擴展服務器功能。CGI 應用程序能與瀏覽器進行交互,還可通過數據API與數據庫服務器等外部數據源進行通信,從數據庫服務器中獲取數據。格式化為HTML文檔后,發送給瀏覽器,也可以將從瀏覽器獲得的數據放到數據庫中。幾乎所有服務器都支持CGI,可用任何語言編寫CGI,包括流行的C、C ++、Java、VB 和Delphi 等。所以說CGI是一個協議,不是進程。CGI的存在,可以使用戶通過瀏覽器來訪問執行在服務器上的動態程序;CGI是Web服務器與CGI程序間傳輸數據的標準。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT