Apache和Nginx---3
什麼是Apache?
Apache HTTP Server或簡稱為“ Apache”,是由一群開發人員在Apache Software Foundation的贊助下開發和維護的開源高效能Web伺服器軟體。這是一個協作式Web伺服器專案,旨在根據當前的HTTP標準建立功能強大,安全有效的商業級Web伺服器。這是一個聯合專案,由遍佈全球的志願者開放社群管理,目的是使用Internet開發HTTP Web伺服器及其隨附文件。自1995年問世以來,Apache一直是Web伺服器市場的領先領導者。它在2009年達到了1億個網站。
由於Apache的電源相容性和多平臺支援,它仍然是伺服器管理員中的首選。儘管Apache可以在幾乎所有主要作業系統(包括Windows,Linux,UNIX,OSX和NetWare)上高效執行,但通常與Linux結合使用。它的體系結構簡單性和靈活性使其成為管理員首選的選擇,因為早期社群對創新和嘗試新技術有一定的需求,而Apache正是它的核心。Apache成為了網際網路的支柱骨幹。
什麼是Nginx?目前,Apache的強大地位已受到其潛在競爭對手Nginx的打擊。Nginx也是最早獲得全球認可的競爭者之一,它還是旨在滿足現代Web需求的可靠Web伺服器平臺。Nginx由俄羅斯開發人員Igor Sysoev開發,是一個免費的開放原始碼HTTP伺服器,也可以用作反向代理,郵件代理和常規TCP / UDP代理伺服器。
它致力於以最少的資源有效地為大量併發使用者提供服務。在無法處理大量Web流量時候,Nginx就起到了作用。
儘管Nginx在許多方面無法與功能豐富的Apache競爭,但其非同步狀態和單執行緒體系結構使其成為選擇Apache的明智選擇。由於其資源效率,輕量級體系結構和高併發性,它通常被管理員首選。最好的部分是,它可以部署為獨立的HTTP伺服器,以使用最少的資源來改進Web伺服器的體系結構。
加上其以有限的硬體資源快速有效地服務靜態流量的能力,無與倫比。另外,Nginx也可以成為潛在的衝擊吸收者,它將保護Apache伺服器免受突然的流量高峰和安全漏洞的影響。簡而言之,Nginx提供了所有基本的HTTP伺服器功能,而不會犧牲其使用有限的硬體資源處理多個請求的能力。
Apache和Nginx之間的區別儘管Apache和Nginx都是Web伺服器業務的兩個主要參與者,它們跨越Internet上50%的Web流量,但它們彼此不同。Apache是開放原始碼的HTTP伺服器,而Nginx是高效能的非同步Web伺服器和反向代理伺服器。Apache HTTP伺服器中的支援,錯誤修復和應用程式開發由來自世界各地的使用者社群管理和維護,並由Apache Software Foundation協調。Nginx的支援和維護由一家成立於2011年的同名公司負責。兩者之間的主要區別是兩者處理客戶端請求的方式。儘管Apache提供了多種處理客戶端請求和Web流量的多處理模組,但Nginx卻被設計為以最少的硬體資源同時處理多個客戶端請求。在Apache HTTP伺服器中,單個執行緒僅與一個連線相關聯,而Nginx中的單個執行緒可以處理多個連線。所有程序與其他連線一起放入事件迴圈中,並進行非同步管理。此過程消耗較少的記憶體,從而提高了效能。Apache具有缺乏可伸縮性的多執行緒體系結構。另一方面,Nginx遵循非同步事件驅動的方法來處理多個客戶端請求。它的事件驅動體系結構經過精心設計,即使在繁忙的流量下也可以提高效能。Apache使用常規方法提供靜態內容,並在Web伺服器本身內部本地處理動態內容。另一方面,Nginx缺乏內部處理動態內容的能力。實際上,它依賴於外部流程來執行。
留言
張貼留言