這篇文章主要講解了“Nginx和PHP的部署方式是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習“Nginx和PHP的部署方式是什么”吧!
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)紹興免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
2種部署方式簡介
第一種
后面n太服務(wù)器的nginx做web服務(wù),并調(diào)用php-fpm提供的fast cgi服務(wù)
此種部署方式最為常見,web服務(wù)和php服務(wù)在同一臺服務(wù)器上都有部署
第二種
前置1臺nginx服務(wù)器做web服務(wù)
后面服務(wù)器只部署php-fpm服務(wù),供nginx服務(wù)器調(diào)用
前置1臺nginx服務(wù)器,在調(diào)用后面多例php-fpm服務(wù)時,也可以做到負載均衡
如下圖 :
對比
從系統(tǒng)設(shè)計角度
第一種部署是常規(guī)部署方式,大中小規(guī)模網(wǎng)站都能適用。
第二種,不同服務(wù)部署在不同服務(wù)器上,更加細致。但也有幾個問題:
前置nginx充當web服務(wù)。對靜態(tài)資源的訪問、壓縮傳輸、緩存設(shè)置等,也都集中在這臺服務(wù)器上。壓力會大,容易成為瓶頸。
如果靜態(tài)資源都存放于cdn,不需要http 壓縮傳輸,這種部署方式還算比較合理;
承接上面兩點,還可以對這種部署方式進行優(yōu)化。如前置nginx負載均衡和反向代理,中間是nginx web服務(wù),后面部署php-fpm服務(wù)。 從性能角度
相比第二種部署方式,第一種多走了一次進程間交互。
按照第一種部署,當一個http請求過來,先是nginx反向代理轉(zhuǎn)發(fā)至nginx web服務(wù)(通過網(wǎng)絡(luò)),web服務(wù)再通過fastcgi協(xié)議與php-fpm進行交互(進程間交互);
按照第二種部署,當一個http請求過來,充當web服務(wù)的nginx,直接通過網(wǎng)絡(luò)與php-fpm進行交互
第一種部署,通過網(wǎng)絡(luò)交互的是http協(xié)議,第二種通過網(wǎng)絡(luò)交互的是fast-cgi協(xié)議, 這兩種協(xié)議對比如何呢?
fast cgi 的數(shù)據(jù)包會比http稍微大一些,fast cgi協(xié)議會比http攜帶更多的參數(shù)信息、傳輸控制信息等等。 fast cgi 協(xié)議比http協(xié)議格式化嚴格一些,解析起來速度更快一些。 從運維角度
第一種是最常見的部署方式,簡單統(tǒng)一,所有提供web服務(wù)的服務(wù)器上的服務(wù)都是同構(gòu)的,單調(diào)粗放。
第二種則是將nginx和php-fpm單獨分開部署,不同服務(wù)在服務(wù)器集群上的分布更加細致。如果統(tǒng)計web服務(wù)中的壓力分布,可以更加精細地利用硬件資源。運維成本也更高。
從開發(fā)測試角度
兩種部署方式都不合適開發(fā)環(huán)境或測試環(huán)境。
開發(fā)和測試環(huán)境把nginx和php部署到一臺服務(wù)器上即可,不需要反向代理和負載均衡。
感謝各位的閱讀,以上就是“Nginx和PHP的部署方式是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習后,相信大家對Nginx和PHP的部署方式是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!