應用程式伺服器

什麼是應用程式伺服器(Application Server)?與Web伺服器有什麼區別?

定義

應用程式伺服器是指通過協議把商業邏輯暴露給客戶端的程序。他提供了訪問商業邏輯的途徑以供客戶端應用程序使用。應用程式伺服器使用此商業邏輯就像調用對象的一個方法一樣。

應用程式伺服器是一種軟件框架,提供一个應用程序執行的環境。用於為應用程序提供安全、數據、事務支持、負載平衡大型分布式系统管理等服務。這個名詞最初是用來討論主從式架構系統時,用來區分資料庫伺服器文檔伺服器 等的不同。但現今常指能運行Web應用程式的Web伺服器

發展

隨著Internet的發展壯大,“主機/終端”或“客戶機/伺服器”的傳統的應用系統模式已經不能適應新的環境,於是就產生了新的分佈式應用系統, 相應地,新的開發模式也應運而生,即所謂的“瀏覽器/伺服器”結構、“瘦客戶機”模式。應用程式伺服器便是一種實現這種模式核心技術。

Web應用程式駐留在應用程式伺服器上。應用程式伺服器為Web應用程式提供一種簡單的和可管理的對系統資源的訪問機制。它也提供低級的服務,如HTTP協議的實現和數據庫連接管理。Servlet容器僅僅是應用程式伺服器的一部分。除了Servlet容器外,應用程式伺服器還可能提供其他的Java EE(Enterprise Edition)組件,如EJB容器,JNDI伺服器以及JMS伺服器等。

市場上可以得到多種應用程式伺服器,其中包括Apache的Tomcat、IBM的WebSphere Application Server、Caucho Technology的Resin、Macromedia的JRun、NEC WebOTX Application Server、JBoss Application Server、Oracle(並購了BEA)的WebLogic等。其中有些如NEC WebOTX Application Server、WebLogic、WebSphere不僅僅是Servlet容器,它們也提供對EJB(Enterprise JavaBeans)、JMS(Java Message Service)以及其他Java EE技術的支持。每種類型的應用伺服器都有自己的優點、局限性和適用性。

應用程式伺服器

分類

通常,根據確定文檔內容的時間,所有文檔可以劃分為如下三類。

靜態:靜態Web 文檔是一個存儲於Web伺服器的檔。靜態文檔的作者在寫作的時候確定文檔的內容。由於文檔內容不會變化,所以對靜態文檔的每次訪問都返回相同結果。

動態:動態web文檔不是以一個預先定義的格式存在,而是在流覽器訪問web伺服器時創建。當一個請求到達時,web伺服器運行一個應用程式創建動態文檔(dynamic documents),伺服器返回程式的輸出作為應答。由於每次訪問都要創建新的文檔,動態文檔的內容是變化的。

活動:一個活動文檔不完全由伺服器一端說明,而是包括一個計算並顯示值的程式。當流覽器訪問活動文檔時,伺服器返回一個流覽器可以本地執行的程式。當該程式運行時,它可以和用戶交互執行並不停地改變顯示。

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

通俗的講,Web伺服器傳送(serves)頁面使瀏覽器可以瀏覽,然而應用程式伺服器提供的是客戶端應用程式可以調用(call)的方法(methods)。確切一點,你可以說:Web伺服器專門處理HTTP請求(request),但是應用程式伺服器是通過很多協議來為應用程式提供(serves)商業邏輯(business logic)。

Latest posts by ICON Data Centre Limited (see all)