什麼是web伺服器控制

kflj88發表於2021-02-19

今天為聚聚們分享一下常見的WEB伺服器以及與應用伺服器的區別首先我們要知道的是什麼是 ,Web伺服器可以解析HTTP協議。當Web伺服器接收到一個HTTP請求,會返回一個HTTP響應,例如送回一個HTML頁面。為了處理一個請求Web伺服器可以響應一個靜態頁面或圖片,進行頁面跳轉或者把動態響應的產生委託給一些其它的程式例如CGI指令碼,JSP指令碼,servlets,ASP指令碼,伺服器端JavaScript,或者一些其它的伺服器端技術。無論它們(譯者注:指令碼)的目的如何,這些伺服器端的程式通常產生一個HTML的響應來讓瀏覽器可以瀏覽。目前最主流的三個Web伺服器是Apache、Nginx、 IIS。

WEB簡介

Web伺服器一般指網站伺服器,是指駐留於因特網上某種型別計算機的程式,可以向瀏覽器等Web客戶端提供文件,也可以放置網站檔案,讓全世界瀏覽;可以放置資料檔案,讓全世界下載。WEB伺服器也稱為WWW(WORLD WIDE WEB)伺服器,主要功能是提供網上資訊瀏覽服務。 Web伺服器是可以向發出請求的瀏覽器提供文件的程式:

1、伺服器是一種被動程式:只有當Internet上執行其他計算機中的瀏覽器發出的請求時,伺服器才會響應。
2 、最常用的Web伺服器是Apache和Microsoft的Internet資訊伺服器(Internet Information Services,IIS)。
3、Internet上的伺服器也稱為Web伺服器,是一臺在Internet上具有獨立IP地址的計算機,可以向Internet上的客戶機提供WWW、Email和FTP等各種Internet服務。
4、Web伺服器是指駐留於因特網上某種型別計算機的程式。當Web瀏覽器(客戶端)連到伺服器上並請求檔案時,伺服器將處理該請求並將檔案反饋到該瀏覽器上,附帶的資訊會告訴瀏覽器如何檢視該檔案(即檔案型別)。伺服器使用HTTP(超文字傳輸協議)與客戶機瀏覽器進行資訊交流,這就是人們常把它們稱為HTTP伺服器的原因。  Web伺服器不僅能夠儲存資訊,還能在使用者透過Web瀏覽器提供的資訊的基礎上執行指令碼和程式。 協議 應用層使用HTTP協議。 HTML(標準通用標記語言下的一個應用)文件格式。 瀏覽器統一資源定位器(URL)。 為了解決HTTP協議的這一缺陷,需要使用另一種協議:安全套接字層超文字傳輸協議HTTPS。為了資料傳輸的安全,HTTPS在HTTP的基礎上加入了SSL協議,SSL依靠證照來驗證伺服器的身份,併為瀏覽器和伺服器之間的通訊加密。WWW 採用的是瀏覽器/伺服器結構,其作用是整理和儲存各種WWW資源,並響應客戶端軟體的請求,把客戶所需的資源傳送到 Windows、UNⅨ 或 Linux 等平臺上.

常用的WEB伺服器

在UNIX和LINUX平臺下使用最廣泛的免費HTTP伺服器是W3C、NCSA和APACHE伺服器,而Windows平臺NT/2000/2003使用IIS的WEB伺服器。在選擇使用WEB伺服器應考慮的本身特性因素有:效能、安全性、日誌和統計、虛擬主機、代理伺服器、緩衝服務和整合應用程式等,下面介紹幾種常用的WEB伺服器。

Microsoft IIS

Microsoft的Web伺服器產品為Internet Information Server (IIS), IIS 是允許在公共Intranet或Internet上釋出資訊的Web伺服器。IIS是目前最流行的Web伺服器產品之一,很多著名的網站都是建立在IIS的平臺上。IIS提供了一個圖形介面的管理工具,稱為 Internet服務管理器,可用於監視配置和控制Internet服務。  IIS是一種Web服務元件,其中包括Web伺服器、FTP伺服器、NNTP伺服器和SMTP伺服器,分別用於網頁瀏覽、檔案傳輸、新聞服務和郵件傳送等方面,它使得在網路(包括網際網路和區域網)上釋出資訊成了一件很容易的事。它提供ISAPI(Intranet Server API)作為擴充套件Web伺服器功能的程式設計介面;同時,它還提供一個Internet資料庫聯結器,可以實現對資料庫的查詢和更新。

IBM WebSphere

WebSphere Application Server 是 一 種功能完善、開放的Web應用程式伺服器,是IBM電子商務計劃的核心部分,它是基於 Java 的應用環境,用於建立、部署和管理 Internet 和 Intranet Web 應用程式。 這一整套產品進行了擴充套件,以適應 Web 應用程式伺服器的需要,範圍從簡單到高階直到企業級。  WebSphere 針對以 Web 為中心的開發人員,他們都是在基本 HTTP伺服器和 CGI 程式設計技術上成長起來的。IBM 將提供 WebSphere 產品系列,透過提供綜合資源、可重複使用的元件、功能強大並易於使用的工具、以及支援 HTTP 和 IIOP 通訊的可伸縮執行時環境,來幫助這些使用者從簡單的 Web 應用程式轉移到電子商務世界

BEA WebLogic

BEA WebLogic Server 是一種多功能、基於標準的web應用伺服器,為企業構建自己的應用提供了堅實的基礎。各種應用開發、部署所有關鍵性的任務,無論是整合各種系統和資料庫,還是提交服務、跨 Internet 協作,起始點都是 BEA WebLogic Server。由於 它具有全面的功能、對開放標準的遵從性、多層架構、支援基於元件的開發,基於 Internet 的企業都選擇它來開發、部署最佳的應用。  BEA WebLogic Server 在使應用伺服器成為企業應用架構的基礎方面繼續處於領先地位。BEA WebLogic Server 為構建整合化的企業級應用提供了穩固的基礎,它們以 Internet 的容量和速度,在連網的企業之間共享資訊、提交服務,實現協作自動化。

APACHE

apache仍然是世界上用的最多的Web伺服器,市場佔有率達60%左右。它源於NCSAhttpd伺服器,當NCSA WWW伺服器專案停止後,那些使用NCSA WWW伺服器的人們開始交換用於此伺服器的補丁,這也是apache名稱的由來(pache 補丁)。世界上很多著名的網站都是Apache的產物,它的成功之處主要在於它的原始碼開放、有一支開放的開發隊伍、支援跨平臺的應用(可以執行在幾乎所有的Unix、Windows、Linux系統平臺上)以及它的可移植性等方面。

Tomcat

Tomcat是一個開放原始碼、執行servlet和JSP Web應用軟體的基於Java的Web應用軟體容器。Tomcat Server是根據servlet和JSP規範進行執行的,因此我們就可以說Tomcat Server也實行了Apache-Jakarta規範且比絕大多數商業應用軟體伺服器要好。  Tomcat是Java Servlet 2.2和JavaServer Pages 1.1技術的標準實現,是基於Apache許可證下開發的自由軟體。Tomcat是完全重寫的Servlet API 2.2和JSP 1.1相容的Servlet/JSP容器。Tomcat使用了JServ的一些程式碼,特別是Apache服務介面卡。隨著Catalina Servlet引擎的出現,Tomcat第四版號的效能得到提升,使得它成為一個值得考慮的Servlet/JSP容器,因此目前許多WEB伺服器都是採用Tomcat。  目前,許多大型Web應用一般將Apache和Tomcat結合使用,Apache負責接收使用者的HTTP請求,如果請求是Servlet、Jsp,則把請求轉發給Tomcat處理,並將處理結果封裝響應給使用者。

web伺服器與應用伺服器的區別

通俗的講,Web伺服器傳送(serves)頁面使瀏覽器可以瀏覽,然而應用程式伺服器提供的是客戶端應用程式可以呼叫(call)的方法(methods)。確切一點,你可以說:Web伺服器專門處理HTTP請求(request),但是應用程式伺服器是透過很多協議來為應用程式提供(serves)商業邏輯(business logic)。  Web伺服器可以解析(handles)HTTP協議。當Web伺服器接收到一個HTTP請求(request),會返回一個HTTP響應(response),例如送回一個HTML頁面。為了處理一個請求(request),Web伺服器可以響應(response)一個靜態頁面或圖片,進行頁面跳轉(redirect),或者把動態響應(dynamic response)的產生委託(delegate)給一些其它的程式例如CGI指令碼,JSP(JavaServer Pages)指令碼,servlets,ASP(Active Server Pages)指令碼,伺服器端(server-side)JavaScript,或者一些其它的伺服器端(server-side)技術。無論它們(譯者注:指令碼)的目的如何,這些伺服器端(server-side)的程式通常產生一個HTML的響應(response)來讓瀏覽器可以瀏覽。 要知道,Web伺服器的代理模型(delegation model)非常簡單。當一個請求(request)被送到Web伺服器裡來時,它只單純的把請求(request)傳遞給可以很好的處理請求(request)的程式(譯者注:伺服器端指令碼)。Web伺服器僅僅提供一個可以執行伺服器端(server-side)程式和返回(程式所產生的)響應(response)的環境,而不會超出職能範圍。伺服器端(server-side)程式通常具有事務處理(transaction processing),資料庫連線(database connectivity)和訊息(messaging)等功能。  雖然Web伺服器不支援事務處理或資料庫連線池,但它可以配置(employ)各種策略(strategies)來實現容錯性(fault tolerance)和可擴充套件性(scalability),例如負載平衡(load balancing),緩衝(caching)。叢集特徵(clustering—features)經常被誤認為僅僅是應用程式伺服器專有的特徵。

WEB伺服器的工作原理

Web伺服器的工作原理並不複雜,一般可分成如下4個步驟:連線過程、請求過程、應答過程以及關閉連線。  1、連線過程:Web伺服器和其瀏覽器之間所建立起來的一種連線。檢視連線過程是否實現,使用者可以找到和開啟socket這個虛擬檔案,這個檔案的建立意味著連線過程這一步驟已經成功建立。  2、請求過程:Web的瀏覽器運用socket這個檔案向其伺服器而提出各種請求。
3、應答過程:運用HTTP協議把在請求過程中所提出來的請求傳輸到Web的伺服器,進而實施任務處理,然後運用HTTP協議把任務處理的結果傳輸到Web的瀏覽器,同時在Web的瀏覽器上面展示上述所請求之介面。
4、關閉連線:當上一個步驟--應答過程完成以後,Web伺服器和其瀏覽器之間斷開連線之過程
Web伺服器上述4個步驟環環相扣、緊密相聯,邏輯性比較強,可以支援多個程式、多個執行緒以及多個程式與多個執行緒相混合的技術。
補充部分:
1.IIS  IIS(Internet資訊服務)英文InternetInformationServer的縮寫。它是微軟公司主推的伺服器。IIS的特點具有:安全性,強大,靈活。
2.Tomcat  Tomcat是Apache軟體基金會(ApacheSoftwareFoundation)的Jakarta專案中的一個核心專案,由Apache、Sun和其他一些公司及個人共同開發而成。Tomcat技術先進、效能穩定,而且免費,因而深受Java愛好者的喜愛並得到了部分軟體開發商的認可,成為目前比較流行的Web應用伺服器。
3.Zeus  Zeus是一個執行於Unix下的非常優秀的Web伺服器,據說效能超過Apache,是效率最高的Web伺服器之一。
4.Nginx  Nginx不僅是一個小巧且高效的HTTP伺服器,也可以做一個高效的負載均衡反向代理,透過它接受使用者的請求並分發到多個Mongrel程式可以極大提高Rails應用的併發能力。
5.Apache  Apache是世界使用排名第一的Web伺服器軟體。它幾乎可以執行在所有的計算機平臺上。由於Apache是開源免費的,因此有很多人參與到新功能的開發設計,不斷對其進行完善。Apache的特點是簡單、速度快、效能穩定,並可做代理伺服器來使用。
6.Lighttpd  Lighttpd是由德國人JanKneschke領導開發的,基於BSD許可的開源WEB伺服器軟體,其根本的目的是提供一個專門針對高效能網站,安全、快速、相容性好並且靈活的webserver環境。具有非常低的記憶體開銷,CPU佔用率低,效能好,以及豐富的模組等特點。支援FastCGI,CGI,Auth,輸出壓縮(outputcompress),URL重寫,Alias等重要功能。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31516067/viewspace-2757678/,如需轉載,請註明出處,否則將追究法律責任。

相關文章