PHP-FPM-cgi-fastcgi和服務(wù)器內(nèi)置模塊的關(guān)系

最早的Web服務(wù)器簡(jiǎn)單地響應(yīng)瀏覽器發(fā)來的HTTP靜態(tài)文件請(qǐng)求,并將存儲(chǔ)在服務(wù)器上的靜態(tài)文件(例如: jpg阳仔、htm忧陪、html)返回給瀏覽器。

但如果涉及到動(dòng)態(tài)請(qǐng)求的話,就要通過CGI協(xié)議來共同約定:
—————————————————————————————————————

CGI協(xié)議(接口標(biāo)準(zhǔn))與CGI程序:

CGI(Common Gateway Interface) 是WWW技術(shù)中最重要的技術(shù)之一近范,有著不可替代的重要地位嘶摊。CGI是外部應(yīng)用程序(CGI程序)與[WEB服務(wù)器]之間的接口標(biāo)準(zhǔn),是在CGI程序和Web服務(wù)器之間傳遞信息的過程评矩。

遵循CGI協(xié)議, 使用perl叶堆、PHP、C等斥杜,就可以用來編寫CGI程序虱颗。(PHP中為php-cgi, php-cgi是 PHP的解釋器,它只是個(gè) CGI 程序蔗喂,只能解析請(qǐng)求忘渔,返回結(jié)果,不會(huì)進(jìn)程管理缰儿。)

CGI 應(yīng)用程序能與瀏覽器進(jìn)行交互,還可通過數(shù)據(jù)庫(kù)API 與數(shù)據(jù)庫(kù)服務(wù)器等外部數(shù)據(jù)源進(jìn)行通信,從數(shù)據(jù)庫(kù)服務(wù)器中獲取數(shù)據(jù),然后發(fā)送給給客戶端畦粮。

CGI的缺點(diǎn)--令人痛惡的 (fork-and-execute 模式):

CGI程序啟動(dòng)后,就會(huì)解析動(dòng)態(tài)腳本返弹,然后將結(jié)果返回給Web服務(wù)器锈玉,最后Web服務(wù)器再將結(jié)果返回給客戶端,剛才fork的進(jìn)程也會(huì)隨之關(guān)閉义起。這樣拉背,每次用戶請(qǐng)求動(dòng)態(tài)腳本,Web服務(wù)器都要重新fork一個(gè)新進(jìn)程默终,去啟動(dòng)CGI程序椅棺。
—————————————————————————————————————

目前主流服務(wù)器規(guī)避CGI弊端的兩種方式:

1犁罩、apche/tomcat- 內(nèi)置模塊

(例如tomcat內(nèi)置java運(yùn)行模塊 , apche內(nèi)置php_mod(PHP代碼解析器))
線程。
以php_mod為例:
apache服務(wù)器在啟動(dòng)的時(shí)候两疚,就會(huì)同時(shí)啟動(dòng)php模塊床估。當(dāng)客戶端請(qǐng)求php文件時(shí),apache服務(wù)器就不用再fork出一個(gè)新進(jìn)程來啟動(dòng)php解釋器诱渤,而是直接將php文件交給運(yùn)行中的php模塊處理丐巫。顯然,這種方式下勺美,效率會(huì)比較高递胧。

由于在apache服務(wù)器啟動(dòng)時(shí),才會(huì)讀取php的配置文件赡茸,加載php模塊缎脾,在apache的運(yùn)行過程中 ,不會(huì)再重新讀取php的配置文件占卧。所以遗菠,每次我們修改了php的配置文件后,必須重啟apache华蜒,新的php配置文件才會(huì)生效辙纬。

2、NIGNX- 配置類似PHP-FPM(JVM)的拓展管理(負(fù)載均衡分布式配置)
php-fpm使用多進(jìn)程模型友多,每個(gè)進(jìn)程只有一個(gè)線程牲平,每個(gè)線程只能處理一個(gè)客戶端訪問。

PHP-FPM:
是FastCGI進(jìn)程管理器的簡(jiǎn)稱域滥。php-fpm就是php中的FastCGI進(jìn)程管理器纵柿。對(duì)于php5.3之前的版本來說,php-fpm是一個(gè)第三方的補(bǔ)丁包启绰,旨在將FastCGI進(jìn)程管理整合進(jìn)PHP包中昂儒。在php5.3之后的版本中,php-fpm不再是第三方的包委可,它已經(jīng)被集成到php的源碼中了渊跋。php-fpm提供了更好的PHP進(jìn)程管理方式,可以有效控制內(nèi)存和進(jìn)程着倾、可以平滑重載PHP配置拾酝,比spawn-fcgi具有更多優(yōu)點(diǎn),所以php-fpm被PHP官方收購(gòu)了卡者。

而FastCGI是什么呢:
FastCGI是用來提高CGI程序性能的蒿囤。類似于CGI,F(xiàn)astCGI也可以說是一種協(xié)議,是對(duì)CGI的一個(gè)補(bǔ)充崇决。
FastCGI像是一個(gè)常駐(long-live)型的CGI材诽,它可以一直執(zhí)行著底挫,只要激活后,不會(huì)每次都要花費(fèi)時(shí)間去fork一次(這是CGI最為人詬病的fork-and-execute 模式)脸侥。它還支持分布式的運(yùn)算, 即 FastCGI 程序可以在網(wǎng)站服務(wù)器以外的主機(jī)上執(zhí)行并且接受來自其它網(wǎng)站服務(wù)器來的請(qǐng)求建邓。

—————————————————————————————————————
如果想知道如何NIGNX配置支持PHP-FPM拓展,參考我另一篇文章:
liunx( centos 7.0) 環(huán)境配置

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市睁枕,隨后出現(xiàn)的幾起案子官边,更是在濱河造成了極大的恐慌,老刑警劉巖外遇,帶你破解...
    沈念sama閱讀 218,386評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拒逮,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡臀规,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門栅隐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來塔嬉,“玉大人,你說我怎么就攤上這事租悄〗骶浚” “怎么了?”我有些...
    開封第一講書人閱讀 164,704評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵泣棋,是天一觀的道長(zhǎng)胶哲。 經(jīng)常有香客問我,道長(zhǎng)潭辈,這世上最難降的妖魔是什么鸯屿? 我笑而不...
    開封第一講書人閱讀 58,702評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮把敢,結(jié)果婚禮上寄摆,老公的妹妹穿的比我還像新娘。我一直安慰自己修赞,他們只是感情好婶恼,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著柏副,像睡著了一般勾邦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上割择,一...
    開封第一講書人閱讀 51,573評(píng)論 1 305
  • 那天眷篇,我揣著相機(jī)與錄音,去河邊找鬼锨推。 笑死铅歼,一個(gè)胖子當(dāng)著我的面吹牛公壤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播椎椰,決...
    沈念sama閱讀 40,314評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼厦幅,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了慨飘?” 一聲冷哼從身側(cè)響起确憨,我...
    開封第一講書人閱讀 39,230評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎瓤的,沒想到半個(gè)月后休弃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡圈膏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評(píng)論 3 336
  • 正文 我和宋清朗相戀三年塔猾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稽坤。...
    茶點(diǎn)故事閱讀 39,991評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡丈甸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出尿褪,到底是詐尸還是另有隱情睦擂,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評(píng)論 5 346
  • 正文 年R本政府宣布杖玲,位于F島的核電站顿仇,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏摆马。R本人自食惡果不足惜臼闻,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望囤采。 院中可真熱鬧些阅,春花似錦、人聲如沸斑唬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)恕刘。三九已至缤谎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間褐着,已是汗流浹背坷澡。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留含蓉,地道東北人频敛。 一個(gè)月前我還...
    沈念sama閱讀 48,158評(píng)論 3 370
  • 正文 我出身青樓项郊,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親斟赚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子着降,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評(píng)論 2 355

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