2種部署方式簡介
第一種
第二種
如下圖:
對比
從系統設計角度
第一種部署是常規部署方式,大中小規模網站都能適用。
第二種,不同服務部署在不同伺服器上,更細緻。但也有幾個問題:
從效能角度
相比第二種部署方式,第一種多走了一次進程間互動。
第一種部署,透過網路互動的是HTTP協議,第二種透過網路互動的是fast-cgi協議, 這兩種協定比較如何呢?
從運維角度
第一種是最常見的部署方式,簡單統一,所有提供web服務的伺服器上的服務都是同構的,單調粗放。
第二種則是將nginx和php-fpm單獨分開部署,不同服務在伺服器叢集上的分佈更細緻。如果統計Web服務中的壓力分佈,可以更精細地利用硬體資源。維運成本也更高。
從開發測試角度
兩種部署方式都不合適開發環境或測試環境。
開發測試環境把nginx和PHP部署到一台伺服器上即可,不需要反向代理和負載平衡。
總結
如果是LAMP環境的部署,第一種比較常見。
如果不是LAMP,是nginx和其他fastcgi服務交互,例如C/C++、java的fastcgi程序,在大規模的網路應用中,類似第二種的部署是常見的。做到不同服務之間分開部署,反而簡化了系統的網路結構,更方便維護。
後記
此篇博文的內容,都來自於和百度前同事在QQ群組裡的討論。
轉載請註明來源
部落格首頁:作程的技術部落格
文章標題:《Nginx 和 PHP 的兩種部署方式比較》
本文連結:http://it.zuocheng.net/compare-2-nginx-php-deployee-mode-zh
以上就介紹了Nginx 和 PHP 的兩種部署方式比較,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。