小編給大家分享一下cgi、fastcgi及php-fpm的原理是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
cgi是通用網關接口定義。當web server收到/index.php這個請求后,會啟動對應的CGI程序,這里就是PHP的解析器。接下來PHP解析器會解析php.ini文件,初始化執行環境,然后處理請求,再以規定CGI規定的格式返回處理后的結果,退出進程。web server再把結果返回給瀏覽器。
fastcgi是一個協議。實現管理進程,提高cgi性能,標準cgi對每個請求都會解析php.ini,初始化環境,浪費時間;fastcgi啟動master進程,解析配置文件,初始化環境,然后啟動多個worker進程;請求過來時,master傳遞給worker進行處理;worker不夠用會預先多起幾個,worker空閑較多會停掉幾個。
是一個實現了fastcgi協議的程序。修改php.ini之后,php-cgi進程無法平滑重啟。php-fpm對此的處理機制是新的worker用新的配置,已經存在的worker處理完手上的活就可以歇著了,通過這種機制來平滑過度。
看完了這篇文章,相信你對cgi、fastcgi及php-fpm的原理是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。