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去處理。
總結
以上所述是小編給大家介紹的Apache和Nginx的優缺點詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答