世界使用排名第一,服務器中的戰鬥機——Apache服務器

世界使用排名第一,服務器中的戰鬥機——Apache服務器

定義

Apache服務器是一個模塊化的服務器,可以運行在幾乎所有廣泛使用的計算機平臺上。其屬於應用服務器。Apache支持支持模塊多,性能穩定,Apache本身是靜態解析,適合靜態HTML、圖片等,但可以通過擴展腳本、模塊等支持動態頁面等。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

Apache創建於1995年,並從 1999 年開始在 Apache 軟件基金會旗下進行開發。Apache靈活、高效,擁有豐富的擴展模塊,以及活躍的社區支持,成為目前世界上最為主流的開源免費的Web服務器軟件。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

Apache 的特性

  1. 可以運行在所有的計算機平臺上
  2. 支持最新的http/1.1協議
  3. 簡單而且強有力的基於文件的配置(httpd.conf)
  4. 支持通用網關接口(cgi)
  5. 支持虛擬主機
  6. 支持http認證
  7. 集成perl
  8. 通過web瀏覽器監視服務器的狀態, 可以自定義日誌
  9. 支持服務器端包含命令
  10. 支持安全socket層
  11. 具有用戶會話過程的跟蹤能力
世界使用排名第一,服務器中的戰鬥機——Apache服務器

運行Apache

為用戶和組運行單獨的Apache Web服務器。默認情況下,它在nobody或daemon中運行它的進程。為了實現更好的隔離,應該將Web服務器配置為在非特權帳戶上運行。通過配置用戶/組可以指示Apache以特定用戶/組的身份運行。當你這樣做時,Apache的文件配置發生變化,隨後重新啟動服務。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

鏈接處理

Apache提供一系列多重處理模塊,通過這些多重處理模塊來使用操作系統的資源,對進程和線程池進行管理,控制處理用戶請求,Apache提供了三種多重處理模塊:mpm_prefork、mpm_worker、mpm_envent。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

mpm_prefork:模塊產生眾多子進程,每個子進程是單線程的,每個線程鏈接一個請求,如此一對一的關係。所以如果請求數大於進程數時,服務器的性能就表現得差強人意了。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

mpm_worker:與prefork不同,worker中子進程是多線程的,每個線程管理一個用戶連接。線程數要多於進程數量,這也就意味著新的連接能立刻得到一個空閒的線程,而不用等待進程空閒。

mpm_event:該模塊與worker相似,區別在於event可以處理長連接(keep-alive),以避免線程被請求長期佔用而造成資源浪費,同時也增強了高併發場景下的請求處理能力。

世界使用排名第一,服務器中的戰鬥機——Apache服務器

世界使用排名第一,服務器中的戰鬥機——Apache服務器


分享到:


相關文章: