與infoq之前訪問過的segmentfault一樣,徳問,是新湧現的一家程式設計領域的社交問答**。通過社群智慧型,讓網際網路成為乙個能為專業難題提供高效解答的寶庫,這就是德問的使命。
最近,尚興躍在上面提出乙個問題:lnmpa和lnmp相比,真的比lnmp更有效率嗎?
lnmpa是在nginx後面加入了apache。由apache來處理一些動態請求。
這種方式讓架構變得有點複雜,但優點似乎也好理解:因為apache比nginx在動態處理和偽url上更加成熟。
程式設計客棧大家覺得,這樣架構合適嗎?還是程式設計客棧多此一舉呢?
在百度百科上,對lnmpa是這樣說的:
lnmp或lamp的劣勢
nginx是乙個小巧而高效的linux下的web伺服器軟體,與apache相比,消耗資源更少,支援的併發連線,更高的效率,反向**功能效率高、靜態檔案處理快等,但動態頁面處理能力不如apache等老牌軟體成熟。單獨使用nginx處理大量動態頁面時容易產生頻繁的502錯誤。
apache是一款老牌的web伺服器軟體,在高併發時對佇列的處理比fastcgi更成熟,apache的mod_php效率比php-cgi更高且更穩定、對偽靜態支援好,不需要轉換、多使用者多站點許可權等方面有著更好的效果,單獨使用apache處理靜態頁面時,對記憶體的占用遠遠超過nginx。
lnmpa的優勢
lnmpa使用nginx作為前端伺服器,能夠更快、更及時地使用更少的系統資源處理靜態頁面、js、等檔案,當客戶端請求訪問動態頁面時,由nginx反向**給作為後端伺服器的apache處理,apache處理完再交予nginx返回給客戶端。
採用lnmpa能夠更好的解決lnm架構中由於php-fpm方面產生的502錯誤,同時能夠以很簡單的方式提供更安全的多使用者多站點環境。
對此問題,毛杭軍的評論是:
nginx + php-fpm 比 apache + mod_php 更省記憶體。如果伺服器記憶體不夠大,用php-fpm是個不錯的選擇,雖然有出現502,不過可以通過負載均衡或動靜態分離來解決。
lnmpa和lnmp,這二種方式用的人都還挺多的,不過我覺得第二種運維更加簡單。我們目前採用lnmp(php-fpm)
原百度系統部技術總監邵輝這樣看待這個問題:
lnmpa還是lnmp真沒這麼重要,在某個共識的edaseqqobt基礎上,隨大流就好。如果非要找個原則,那麼就用滿足需求的最簡單的方案。
現在硬體的效能這麼好,**也便宜,就用lamp又如何?效能的瓶頸大多數情況下都在業務邏輯和資料處理部分,靜態頁面沒有必要過多考慮,除非你產品的核心內容就是、**,如果是這樣,把靜態內容分離就好了。
infoq的讀者們,你們對這個問題怎麼看?歡迎在評論中留下你們的觀點!
文章**:
本文標題: 和lnmp相比 lnmpa是否效率更高?
本文位址:
lnmp和lnmp的效能
一般業務大家都使用nginx了.這個是標配,主要是為了以後擴充套件架構以提高訪問量方便,linux上nginx跟php fpm的組合很好.nginx輕量,穩定,高效,跟php fpm通過fastcgi進行網路通訊,松耦合,比如你要開100個php工作程序 1.使用apache mod php則需要開...
SCTP和TCP UDP相比,有什麼不同
在sctp stream control transmission protocol,流控制傳輸協議 制定以前,在ip網上傳輸七号信令使用的是udp tcp協議。udp是一種無連線的傳輸協議,無法滿足七号信令對傳輸質量的要求。tcp協議是一種有連線的傳輸協議,可以信令的可靠傳輸,但是tcp協議具有行...
LAMP和LNMP的詳解
最近學習下關於php伺服器的搭建,從而小結下自己學習理解的知識。對於伺服器的web部署來說很多人都熟悉lamp和lnmp兩種方式,首先說一下字面上看其實就是乙個字母差別,其實也是web環境中核心的環境差別。lamp linux apache mysql php的組合方式 lnmp linux ngi...