Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 服務器技術 >> Web服務器 >> 電腦技術:什麼是WEB服務器

電腦技術:什麼是WEB服務器

日期:2017/1/21 9:35:14      編輯:Web服務器

 WEB服務器也稱為WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息浏覽服務。

    (1)應用層使用HTTP協議。

    (2)HTML文檔格式。

    (3)浏覽器統一資源定位器(URL)。

    在許多用戶看來,一個Web網站的成敗主要在於它所提供的內容和功能,殊不知支持這些內容和功能的Web服務器才是真正的幕後英雄。全世界有數億個網站。每個網站的後面都運行著一個Web服務器,那麼什麼是Web服務器?它是到底怎樣工作的?如何建立企業自己的Web網站?

    Web服務器可以理解為一個提供網頁的主機程序,是一台負責提供網頁的計算機,主要是HTML文件,透過HTTP協議傳給客戶機,一般是指客戶機網頁浏覽器,如常用的IE,Firefox等。Web技術的獨特之處是采用超鏈接和多媒體信息。Web服務器使用超文本標記語言描述網絡的資源,創建網頁,以供Web浏覽器閱讀。通俗的說:您現在看到的專題,其實就是放在一個Web服務器上的,您上網通過超文本傳輸協議(HTTP)看到了這個頁面,但是這個頁面是HTML類型的,網絡上的Web服務器還支持ASP,PHP,CGI,JSP等腳本。

    WWW代表萬維網的意思

    WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發展起來的服務,也是發展最快和目前用的最廣泛的服務。正是因為有了WWW工具,才使得近年來 Internet 迅速發展,且用戶數量飛速增長。

    1、WWW簡介

    WWW 是 World Wide Web (環球信息網)的縮寫,也可以簡稱為 Web,中文名字為“萬維網”。它起源於1989年3月,由歐洲量子物理實驗室 CERN(the European Laboratory for Particle Physics)所發展出來的主從結構分布式超媒體系統。通過萬維網,人們只要通過使用簡單的方法,就可以很迅速方便地取得豐富的信息資料。 由於用戶在通過 Web 浏覽器訪問信息資源的過程中,無需再關心一些技術性的細節,而且界面非常友好,因而 Web 在Internet 上一推出就受到了熱烈的歡迎,走紅全球,並迅速得到了爆炸性的發展。

    2、WWW的發展和特點

    長期以來,人們只是通過傳統的媒體(如電視、報紙、雜志和廣播等)獲得信息。但隨著計算機網絡的發展,人們想要獲取信息,已不再滿足於傳統媒體那種單方面傳輸和獲取的方式,而希望有一種主觀的選擇性。現在,網絡上提供各種類別的數據庫系統,如文獻期刊、產業信息、氣象信息、論文檢索等等。由於計算機網絡的發展,信息的獲取變得非常及時、迅速和便捷。

    到了1993年,WWW 的技術有了突破性的進展,它解決了遠程信息服務中的文字顯示、數據連接以及圖像傳遞的問題,使得 WWW 成為 Internet 上最為流行的信息傳播方式。 現在,Web 服務器成為 Internet 上最大的計算機群,Web 文檔之多、鏈接的網絡之廣,令人難以想象。可以說,Web 為 Internet 的普及邁出了開創性的一步,是近年來 Internet 上取得的最激動人心的成就。

    WWW 采用的是客戶/服務器結構,其作用是整理和儲存各種WWW資源,並響應客戶端軟件的請求,把客戶所需的資源傳送到 Windows 95(或Windows98)、Windows NT、UNIX 或 Linux 等平台上。

    使用最多的 web server 服務器軟件 有兩個:微軟的信息服務器(iis),和Apache。

    通俗的講,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)經常被誤認為僅僅是應用程序服務器專有的特征。

應用程序服務器(The Application Server)

    根據我們的定義,作為應用程序服務器,它通過各種協議,可以包括HTTP,把商業邏輯暴露給(expose)客戶端應用程序。Web服務器主要是處理向浏覽器發送HTML以供浏覽,而應用程序服務器提供訪問商業邏輯的途徑以供客戶端應用程序使用。應用程序使用此商業邏輯就象你調用對象的一個方法(或過程語言中的一個函數)一樣。

    應用程序服務器的客戶端(包含有圖形用戶界面(GUI)的)可能會運行在一台PC、一個Web服務器或者甚至是其它的應用程序服務器上。在應用程序服務器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限於簡單的顯示標記。相反,這種信息就是程序邏輯(program logic)。 正是由於這種邏輯取得了(takes)數據和方法調用(calls)的形式而不是靜態HTML,所以客戶端才可以隨心所欲的使用這種被暴露的商業邏輯。

    在大多數情形下,應用程序服務器是通過組件(component)的應用程序接口(API)把商業邏輯暴露(expose)(給客戶端應用程序)的,例如基於J2EE(Java 2 Platform, Enterprise Edition)應用程序服務器的EJB(Enterprise JavaBean)組件模型。此外,應用程序服務器可以管理自己的資源,例如看大門的工作(gate-keeping duties)包括安全(security),事務處理(transaction processing),資源池(resource pooling), 和消息(messaging)。就象Web服務器一樣,應用程序服務器配置了多種可擴展(scalability)和容錯(fault tolerance)技術。

    例如,設想一個在線商店(網站)提供實時定價(real-time pricing)和有效性(availability)信息。這個站點(site)很可能會提供一個表單(form)讓你來選擇產品。當你提交查詢(query)後,網站會進行查找(lookup)並把結果內嵌在HTML頁面中返回。網站可以有很多種方式來實現這種功能。我要介紹一個不使用應用程序服務器的情景和一個使用應用程序服務器的情景。觀察一下這兩中情景的不同會有助於你了解應用程序服務器的功能。

    情景1:不帶應用程序服務器的Web服務器

    在此種情景下,一個Web服務器獨立提供在線商店的功能。Web服務器獲得你的請求(request),然後發送給服務器端(server-side)可以處理請求(request)的程序。此程序從數據庫或文本文件(flat file,譯者注:flat file是指沒有特殊格式的非二進制的文件,如properties和XML文件等)中查找定價信息。一旦找到,服務器端(server-side)程序把結果信息表示成(formulate)HTML形式,最後Web服務器把會它發送到你的Web浏覽器。

    簡而言之,Web服務器只是簡單的通過響應(response)HTML頁面來處理HTTP請求(request)。

    情景2:帶應用程序服務器的Web服務器

    情景2和情景1相同的是Web服務器還是把響應(response)的產生委托(delegates)給腳本(譯者注:服務器端(server-side)程序)。然而,你可以把查找定價的商業邏輯(business logic)放到應用程序服務器上。由於這種變化,此腳本只是簡單的調用應用程序服務器的查找服務(lookup service),而不是已經知道如何查找數據然後表示為(formulate)一個響應(response)。 這時當該腳本程序產生HTML響應(response)時就可以使用該服務的返回結果了。

    在此情景中,應用程序服務器提供(serves)了用於查詢產品的定價信息的商業邏輯。(服務器的)這種功能(functionality)沒有指出有關顯示和客戶端如何使用此信息的細節,相反客戶端和應用程序服務器只是來回傳送數據。當有客戶端調用應用程序服務器的查找服務(lookup service)時,此服務只是簡單的查找並返回結果給客戶端。

    通過從響應產生(response-generating)HTML的代碼中分離出來,在應用程序之中該定價(查找)邏輯的可重用性更強了。其他的客戶端,例如收款機,也可以調用同樣的服務(service)來作為一個店員給客戶結帳。相反,在情景1中的定價查找服務是不可重用的因為信息內嵌在HTML頁中了。

    總而言之,在情景2的模型中,在Web服務器通過回應HTML頁面來處理HTTP請求(request),而應用程序服務器則是通過處理定價和有效性(availability)請求(request)來提供應用程序邏輯的。

    警告(Caveats)

    現在,XML Web Services已經使應用程序服務器和Web服務器的界線混淆了。通過傳送一個XML有效載荷(payload)給服務器,Web服務器現在可以處理數據和響應(response)的能力與以前的應用程序服務器同樣多了。

    另外,現在大多數應用程序服務器也包含了Web服務器,這就意味著可以把Web服務器當作是應用程序服務器的一個子集(subset)。雖然應用程序服務器包含了Web服務器的功能,但是開發者很少把應用程序服務器部署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有應用程序服務器的功能又有Web服務器的功能)。相反,如果需要,他們通常會把Web服務器獨立配置,和應用程序服務器一前一後。這種功能的分離有助於提高性能(簡單的Web請求(request)就不會影響應用程序服務器了),分開配置(專門的Web服務器,集群(clustering)等等),而且給最佳產品的選取留有余地。

Copyright © Windows教程網 All Rights Reserved