歡迎您光臨本站 註冊首頁

· nginx vs apache雜誌閱讀

Apache和Nginx比較

admin @ 2020-04-17 reply:0

Apache和Nginx對比

功能對比

Nginx和Apache一樣,都是HTTP伺服器軟體,在功能實現上都採用模組化結構設計,都支援通用的語言介面,如PHP、Perl、Python等,同時還支援正向和反向代理、虛擬主機、URL重寫、壓縮傳輸、SSL加密傳輸等。

在功能實現上,Apache的所有模組都支援動、靜態編譯,而Nginx模組都是靜態編譯的, 對FastCGI的支援,Apache對Fcgi的支援不好,而Nginx對Fcgi的支援非常好; 在處理連線方式上,Nginx支援epoll,而Apache卻不支援; 在空間使用上,Nginx安裝包僅僅只有幾百K,和Nginx比起來Apache絕對是龐然大物。

Nginx相對apache的優點

輕量級,同樣起web 服務,比apache 佔用更少的記憶體及資源

靜態處理,Nginx 靜態處理效能比 Apache 高 3倍以上

抗併發,nginx 處理請求是非同步非阻塞的,而apache則是阻塞型的,在高併發下nginx 能保持低資源低消耗高效能。在Apache+PHP(prefork)模式下,如果PHP處理慢或者前端壓力很大的情況下,很容易出現Apache程序數飆升,從而拒絕服務的現象。

高度模組化的設計,編寫模組相對簡單

社群活躍,各種高效能模組出品迅速啊

apache相對nginx的優點

rewrite,比nginx 的rewrite 強大

模組超多,基本想到的都可以找到

少bug,nginx的bug相對較多

超穩定

Apache對PHP支援比較簡單,Nginx需要配合其他後端用

選擇Nginx的優勢所在

作為Web伺服器: Nginx處理靜態檔案、索引檔案,自動索引的效率非常高。 作為代理伺服器,Nginx可以實現無快取的反向代理加速,提高網站執行速度。 作為負載均衡伺服器,Nginx既可以在內部直接支援Rails和PHP,也可以支援HTTP代理伺服器對外進行服務,同時還支援簡單的容錯和利用演演算法進行負載均衡。 在效能方面,Nginx是專門為效能優化而開發的,在實現上非常注重效率。它採用核心Poll模型(epoll and kqueue ),可以支援更多的併發連線,最大可以支援對50 000個併發連線數的響應,而且只佔用很低的記憶體資源。 在穩定性方面,Nginx採取了分階段資源分配技術,使得CPU與記憶體的佔用率非常低。Nginx官方表示,Nginx保持10 000個沒有活動的連線,而這些連線只佔用2.5MB記憶體,因此,類似DOS這樣的攻擊對Nginx來說基本上是沒有任何作用的。 在高可用性方面,Nginx支援熱部署,啟動速度特別迅速,因此可以在不間斷服務的情況下,對軟體版本或者配置進行升級,即使執行數月也無需重新啟動,幾乎可以做到7×24小時不間斷地執行。

同時使用Nginx和Apache

由於Nginx和Apache各自的優勢,現在很多人選擇了讓兩者在伺服器中共存。在伺服器端讓Nginx在前,Apache在後。由Nginx做負載均衡和反向代理,並且處理靜態檔案,講動態請求(如PHP應用)交給Apache去處理。


[admin via ] Apache和Nginx比較已經有414次圍觀

http://coctec.com/magazine/show-post-item-28.html