CGI、FastCGI棕所、PHP-CGI和PHP-FPM 概念區(qū)分

CGI

簡介

CGI全稱是通用網(wǎng)關(guān)接口(Common Gateway Interface)闸盔,是外部應(yīng)用程序與與服務(wù)器之間的接口標(biāo)準(zhǔn),是在CGI程序和web服務(wù)器之間傳遞信息的規(guī)程琳省。

在物力層面上迎吵、CGI是一段程序,運(yùn)行在服務(wù)器上针贬。

CGI可以用任意語言編寫击费,主要這種語言具有標(biāo)準(zhǔn)輸入、輸出和環(huán)境變量

FastCGI

簡介

FastCGI是一個可伸縮地桦他、高速地在HTTP server和動態(tài)腳本語言間通信的接口荡灾。多數(shù)流行的HTTP server都支持FastCGI,包括Apache瞬铸、Nginx和lighttpd等批幌,同時,F(xiàn)astCGI也被許多腳本語言所支持嗓节,其中就有PHP荧缘。

FastCGI是從CGI發(fā)展改進(jìn)而來的。傳統(tǒng)CGI接口方式的主要缺點(diǎn)是性能很差拦宣,因?yàn)槊看蜨TTP服務(wù)器遇到動態(tài)程序時都需要重新啟動腳本解析器來執(zhí)行解析截粗,然后結(jié)果被返回給HTTP服務(wù)器信姓。這在處理高并發(fā)訪問時,幾乎是不可用的绸罗。另外傳統(tǒng)的CGI接口方式安全性也很差意推,現(xiàn)在已經(jīng)很少被使用了。

FastCGI接口方式采用C/S結(jié)構(gòu)珊蟀,可以將HTTP服務(wù)器和腳本解析服務(wù)器分開菊值,同時在腳本解析服務(wù)器上啟動一個或者多個腳本解析守護(hù)進(jìn)程。當(dāng)HTTP服務(wù)器每次遇到動態(tài)程序時育灸,可以將其直接交付給FastCGI進(jìn)程來執(zhí)行腻窒,然后將得到的結(jié)果返回給瀏覽器。這種方式可以讓HTTP服務(wù)器專一地處理靜態(tài)請求或者將動態(tài)腳本服務(wù)器的結(jié)果返回給客戶端磅崭,這在很大程度上提高了整個應(yīng)用系統(tǒng)的性能儿子。

原理

  1. Web Server啟動時載入FastCGI進(jìn)程管理器(IIS ISAPI或Apache Module)
  2. FastCGI進(jìn)程管理器自身初始化,啟動多個CGI解釋器進(jìn)程(可見多個php-cgi)并等待來自Web Server的連接砸喻。
  3. 當(dāng)客戶端請求到達(dá)Web Server時柔逼,F(xiàn)astCGI進(jìn)程管理器選擇并連接到一個CGI解釋器。Web server將CGI環(huán)境變量和標(biāo)準(zhǔn)輸入發(fā)送到FastCGI子進(jìn)程php-cgi割岛。
  4. FastCGI子進(jìn)程完成處理后將標(biāo)準(zhǔn)輸出和錯誤信息從同一連接返回Web Server卒落。當(dāng)FastCGI子進(jìn)程關(guān)閉連接時,請求便告處理完成蜂桶。FastCGI子進(jìn)程接著等待并處理來自FastCGI進(jìn)程管理器(運(yùn)行在Web Server中)的下一個連接。 在CGI模式中也切,php-cgi在此便退出了扑媚。

PHP-CGI

簡介

PHP-CGI是php自帶的Fast-CGI管理器。

PHP-CGI的不足:

  1. php-cgi變更php.ini配置后需重啟php-cgi才能讓新的php-ini生效雷恃,不可以平滑重啟疆股。
  2. 直接殺死php-cgi進(jìn)程,php就不能運(yùn)行了倒槐。(PHP-FPM和Spawn-FCGI就沒有這個問題旬痹,守護(hù)進(jìn)程會平滑從新生成新的子進(jìn)程。)

PHP-FPM

簡介

  1. PHP-FPM是一個PHP FastCGI的管理器讨越,他是能夠調(diào)度php-cgi進(jìn)程的程序两残。
  2. 修改php.ini之后,php-cgi進(jìn)程的確沒辦法平滑重啟把跨,但php-fpm對此的應(yīng)對方法是新的進(jìn)程用新的配置人弓,已經(jīng)存在的進(jìn)程讓按照之前的配置執(zhí)行到結(jié)束。用這種方式進(jìn)行平滑過渡着逐。
  3. PHP-fpm就是針對于PHP的崔赌,F(xiàn)astcgi的一種實(shí)現(xiàn)意蛀,他負(fù)責(zé)管理一個進(jìn)程池,來處理來自Web服務(wù)器的請求健芭。目前县钥,PHP-fpm是內(nèi)置于PHP的
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市慈迈,隨后出現(xiàn)的幾起案子若贮,更是在濱河造成了極大的恐慌,老刑警劉巖吩翻,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件兜看,死亡現(xiàn)場離奇詭異,居然都是意外死亡狭瞎,警方通過查閱死者的電腦和手機(jī)细移,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來熊锭,“玉大人弧轧,你說我怎么就攤上這事⊥胍螅” “怎么了精绎?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長锌妻。 經(jīng)常有香客問我代乃,道長,這世上最難降的妖魔是什么仿粹? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任搁吓,我火速辦了婚禮,結(jié)果婚禮上吭历,老公的妹妹穿的比我還像新娘堕仔。我一直安慰自己,他們只是感情好晌区,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布摩骨。 她就那樣靜靜地躺著,像睡著了一般朗若。 火紅的嫁衣襯著肌膚如雪恼五。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天哭懈,我揣著相機(jī)與錄音唤冈,去河邊找鬼。 笑死银伟,一個胖子當(dāng)著我的面吹牛你虹,可吹牛的內(nèi)容都是我干的绘搞。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼傅物,長吁一口氣:“原來是場噩夢啊……” “哼夯辖!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起董饰,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蒿褂,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后卒暂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啄栓,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年也祠,在試婚紗的時候發(fā)現(xiàn)自己被綠了昙楚。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡诈嘿,死狀恐怖堪旧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情奖亚,我是刑警寧澤淳梦,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站昔字,受9級特大地震影響爆袍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜作郭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一陨囊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧所坯,春花似錦、人聲如沸挂捅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闲先。三九已至状土,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伺糠,已是汗流浹背蒙谓。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留训桶,地道東北人累驮。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓酣倾,卻偏偏與公主長得像,于是被迫代替她去往敵國和親谤专。 傳聞我的和親對象是個殘疾皇子躁锡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容