劉佳
摘要:目前用來搭建WEB服務器的軟件產品很多,對于WEB服務器軟件的選用直接關系到WEB訪問的性能。進而影響網站的訪問量,是直接影響網站性能的關鍵因素,也是網站建設者在搭建網站運行環境時需要考慮的問題。目前用于搭建WEB服務器的軟件產品非常多,讓人目不暇接,被選最多和最有代表性的當屬微軟的IIS、Apache、和Nginx。本文通過講解Apache和Nginx以及IIS的各自起源、特點和優勢,并對三種主流WEB服務器搭建技術進行對比,從而幫助廣大用戶們能夠選擇適合自己的WEB服務器,提升WEB服務器性能。
關鍵詞:WEB服務;進程;服務組件
中圖分類號:TP393 文獻標識碼:A
文章編號:1009-3044(2020115-0081-02
WEB服務器也稱為WWW服務器、HTYP服務器,其主要功能是提供網上信息瀏覽服務。在互聯網發展的初期,人們只能單純地在互聯網上使用TELNET服務、FTP服務、郵件服務等簡單的網絡應用,而且必須使用專門的客戶端軟件才能實現。WEB服務器出現后,由于界面非常友好,操作簡單,并且集成了FTP和郵件的相關功能,當WEB服務在網絡上一經推出,就受到了廣大網民的追捧,隨著WEB應用的不斷發展,Internet也得到了迅猛的發展,可以說因特網的發展與WEB技術的出現是密不可分的。大大降低了人們使用互聯網的門檻,因此WEB服務器成為互聯網上乃至全球最大的計算機集群。人們的生活方式也得以徹底改變。
1WEB服務的起源發展和特點
互聯網迅猛發展之前,人們只能通過傳統媒體如報紙、廣播、雜志、電視獲取信息。這種信息的獲取方式是單方面的,對使用者而言是被動的,但隨著計算機網絡的發展,人們已不再滿足于使用傳統媒體那種單方面傳輸和獲取的方式,而希望有一種主觀的選擇性。于是WEB應時而生。1989年Web的應用架構是由英國人Tim Berners-Lee提出,它的前身是1980年Tim Berners-Iee負責的Enquire(Enquire Within Upon Everything的簡稱)項目。1990年第一臺WEB服務器nxoeO1.eem.eh開始運行,全球第一次出現了圖形化Web瀏覽器。值得一提的是在1993年,WEB技術突破性解決了遠程信息服務中的文字顯示、數據連接以及圖像傳遞的問題,使得WEB成為可以集成原有因特網上的各項服務,成為當時最為流行的信息傳播方式。這種傳播方式的改變使得人們可以主動的選擇瀏覽WEB站點上的新聞、財經、氣象、音頻、視頻資料。而不像以往傳統媒體被動的、單方面的接收信息。人們可以隨意在WEB上進行文件檢索,通過搜索引擎查找自己關注的急需的相關信息。目前,Web服務器成為全世界范圍內上最大的計算機集群,WEB頁面數量之多,涉及范圍之廣,影響之大無法想象。WEB的出現使得人們使用INTERNET的門檻大大降低,正是WEB的發展使得INTERNET的普及速度迅猛提升,WEB的出現是近年來Internet上取得的最激動人心的成就。WEB服務是使用分布式結構,包括了瀏覽器/服務器結構(B/s),其中WEB服務作用是整理和儲存各種WEB資源,并響應客戶端軟件(瀏覽器)的請求,把客戶所需的資源傳送到各類不同平臺的客戶端機器上。從事WEB開發的相關技術人員,無論是前端開發還是后臺數據庫搭建,依然是當期計算機從業的主流。目前支持搭建WEB服務器的軟件眾多,從事WEB開發的技術人員至少需要掌握Apache、Nginx以及微軟的IIS其中的一種。下面對這三者分別進行介紹。
2龍頭Apache HTTP Server起源、特點及優勢
Apache目前在全球WEB服務器搭建軟件中市場的占有率大約在百分之六十左右,是名副其實的龍頭老大。Apache名字的來源是“a patchy server”,英文直譯為打滿補丁的服務器,中文也稱之為阿帕奇。因為軟件跨平臺和安全性能出色而被廣泛應用。最早的Apache源于NCSAhttpd服務器。因為是開放源碼的軟件,所以不斷有人來為此軟件修改本身存在的缺陷,經過多次修改,他的性能不斷提升,功能也不斷完善,可以通過簡單的API進行功能的擴充。目前是世界上最為流行的WEB服務器軟件。阿帕奇的特點是可以充當代理服務器來使用,他的性能非常穩定而且速度快。與Linux或Unix能夠完美結合。阿帕奇不適用于多處理器環境。他的運行以進程為基礎,相對于線程,進程要消耗更多的系統開支,因而在進行網站擴充時,一般要通過擴充節點集群或通過增加服務器的方式得以實現。阿帕奇的優勢在于Apache基金會下有一個項目組,將這個組織的開發愛好者們聚集在一起,不斷對他的源碼進行優化和持續開放,不斷完善阿帕奇的各項功能,目前世界上很多著名的網站如:雅虎、亞馬孫、W3 Consortium等。這些網站的服務器都是使用Apache搭建。他的移植性能優越。并且可以運行在幾乎所有的Unix、Windows、Linux系統平臺上。
3后起之秀Nginx的特點和優勢
Nginx是由俄羅斯軟件工程師Igor svsoev編寫的免費開源Web服務器。自從2004年上市以來,nginx專注于高性能,高并發性和低內存使用。并且其在負載均衡,緩存,訪問和帶寬控制以及與各種應用程序高效集成等方面的特性,都使得它逐步深受廣大用戶青睞。事實上Nginx是一款輕量級的Web服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like協議下發行。Nginx是通過異步的、非阻塞的、事件驅動的方式在實現的。Nginx的工作進程是單線程的,每個線程可以異步的處理大量的用戶請求。動態內容處理是Nginx的痛點。Nginx處理動態內容的效率并不高,且需借助外部的處理器。總之Nginx的特點是并發處理能力強,并且在服務器軟件運行過程中軟件本身占用的內存比例很少,能大大節約服務器的內存資源。目前在我國國內被廣泛使用。使用nginx搭建網站的著名網站平臺有:騰訊、淘寶、京東、百度、新浪、網易等。它的并發處理能力在N6-網站服務器軟件對比中首屈一指。
4簡單易用微軟IIS的特點、優勢和不足
IIS是Internet Information Services的縮寫,是由美國微軟公司開發和提供的服務器搭建軟件。一般我們學習搭建WEB服務器的人門都是使用IIS。它是隨著正版WINDOWS發行的可選組件包。它不能安裝在除WINDOWS以外的其他操作系統中。最早在WIN NT中出現IIS可選組件,后續微軟發行的WINDOWS版本都自帶。由于IIS是隨WINDOWS正版一起發售,那么在合法使用IIs時就必須付費。所以他是付費的WEB服務器軟件。使用IIS搭建WEB服務器非常簡單易學。新手能使用IIS迅速搭建一個WEB站點,并提供所需的FIT服務和郵件服務。但是IIS又有很多不足,IIS經常會出現一些莫名其妙的錯誤,有時搭建的WEB服務器會出現假死或出現500錯誤。在安全性方面,IIS容易受到遠程執行漏洞的威脅,黑客容易通過遠程執行漏洞在系統賬號中執行任意代碼。導致數據丟失或機器藍屏。它的最大不足是在系統的可移植性方面,如果離開了WINDOWS的環境,它將無法生存,也無法把WEB站點移植到其他操作系統平臺上。
5結語
主流和代表性的WEB服務器軟件Apache、Nginx以及微軟的IIS各有特點、優勢也各有不足,下面對這三者進行簡單的對比分析,Apache和Nginx最大的不同在于它們對連接的處理方式。Apache提供一系列多重處理模塊,通過這些多重處理模塊來使用操作系統的資源,對進程和線程池進行管理,控制處理用戶請求。與Apache不同,Nginx是通過異步的、非阻塞的、事件驅動的方式在實現的。Nginx的工作進程是單線程的,每個線程可以異步的處理大量的用戶請求。Apache擁有豐富的模塊組件支持,穩定性強,BUG少,動態內容處理強。Ngi.x輕量級,占用資源少,負載均衡,高并發處理強,靜態內容處理高效。從付費角度來看Apache是完全免費的,不需要支付任何費用就可以免費下載使用,而Ⅱs是收費的,但在配置角度而言,Apache的配置幣IIS要復雜,不過已經配置完畢就可以長期使用。目前很多公司和企業不希望聘請專門的網絡技術來維護自己的網站,但因為公司宣傳的需要又必須有自己個陛化的站點,尤其是一些簡單站點只用于對外宣傳和展示,系統復雜度不高,因此必然會找上手相對容易的工具來搭建自己的WEB服務站點,IIS開起來非常容易,很方便地就能讓IIS32作,對外發布自己的站點。存在即有道理,Apache和Nginx、IIS作為WEB服務各有所長,三者并不存在將來誰會完全替代誰。關鍵在于用戶要認真考慮清楚自己的應用場景,根據自己的需求和情況來斟酌選擇哪個產品,畢竟適合自己的才是最好的。