?? websphere快速入門(4).txt
字號:
作者:easyinfonet
email: easyinfonet@sina.com.cn
日期:2001-2-16 11:22:45
2.3 Web應(yīng)用編程模型
Web應(yīng)用是這樣的應(yīng)用系統(tǒng),它利用Web客戶(如Web瀏覽器)、Web服務(wù)器和標(biāo)準(zhǔn)的Internet協(xié)議。通常,Web應(yīng)用也能利用來自外部非Web服務(wù)的應(yīng)用系統(tǒng)和數(shù)據(jù)。Web應(yīng)用編程模型定義了Web應(yīng)用拓?fù)浣Y(jié)構(gòu)以及使用框架提供的服務(wù)來設(shè)計Web應(yīng)用的模型。
圖2-3:Web應(yīng)用的拓?fù)浣Y(jié)構(gòu)
圖2-3顯示了Web應(yīng)用的拓?fù)浣Y(jié)構(gòu)(包括主要的元素)。值得注意的是,Web應(yīng)用服務(wù)器和外部服務(wù)是不同邏輯層,它們可能運行在同一臺機器上。另外,Web應(yīng)用服務(wù)器的功能可能分散在多臺機器上。通常,一個Web應(yīng)用中的前端和業(yè)務(wù)邏輯部分運行在不同的機器上。Web應(yīng)用的拓?fù)浣Y(jié)構(gòu)包含的元素有客戶、Web應(yīng)用服務(wù)器、基礎(chǔ)設(shè)施服務(wù)和外部服務(wù)。
1. 客戶
客戶使用Internet技術(shù)標(biāo)準(zhǔn)(如TCP/IP、HTTP、HTML和XML)與Web應(yīng)用服務(wù)器通信來存取業(yè)務(wù)邏輯和數(shù)據(jù)。客戶端的基本功能是接受并驗證用戶輸入,顯示從Web應(yīng)用服務(wù)器到用戶的返回結(jié)果。客戶可以是Internet 、Intranet(內(nèi)部網(wǎng))和Extranet(外部網(wǎng))中的客戶。Web應(yīng)用編程模型的重要準(zhǔn)則之一是Web應(yīng)用的商務(wù)邏輯總是運行在服務(wù)端而不是在客戶端。其優(yōu)點如下:
1) 支持更廣泛的客戶端設(shè)備
2) Web應(yīng)用服務(wù)器能集成對資源(如數(shù)據(jù)庫)的存取,從而簡化應(yīng)用的設(shè)計,增強可伸縮性,并提供對資源的更好保護。
3) 運行在服務(wù)端的商務(wù)邏輯容易得到保護、更新和維護。
4) 運行在服務(wù)端的商務(wù)邏輯使得用戶的應(yīng)用環(huán)境得到集中管理并能在不同的客戶機上重建。
2. Web應(yīng)用服務(wù)器
Web應(yīng)用服務(wù)器是 Web應(yīng)用拓?fù)浣Y(jié)構(gòu)的核心,它為Web應(yīng)用提供了廣泛的程序設(shè)計、數(shù)據(jù)存取和應(yīng)用集成等服務(wù)。我們可以把一個Web應(yīng)用看作一個客戶與Web站點之間一系列的交互作用。整個交互過程從顯示在Web瀏覽器中一個頁面開始。用戶單擊該頁面上的一個按鈕或鏈接就產(chǎn)生一個請求,該請求被送到Web應(yīng)用服務(wù)器。Web應(yīng)用服務(wù)器對這個請求進行處理,產(chǎn)生新的頁面,并送回到客戶端。在Web瀏覽器中顯示的新頁面就是這一次請求的結(jié)果,可能也是下一次請求的開始。所以說,Web應(yīng)用包含了一組交互或處理步驟,每一步必須產(chǎn)生一個頁面形式的響應(yīng),這個頁面作為后繼交互作用的入口。
圖2-4:Web應(yīng)用的交互模型
深究單個交互的細(xì)節(jié),不難發(fā)現(xiàn)這里有三個共用的處理要求,包括業(yè)務(wù)邏輯層、用戶界面層和交互控制器層(參見圖2-4)。具體來講:
1) 業(yè)務(wù)邏輯層。記錄并處理用戶輸入的部分。比如:對應(yīng)于在購物籃中添加一項商品的數(shù)據(jù)庫更新操作,或從一個銀行帳戶到另一個的資金轉(zhuǎn)帳操作。
2) 用戶界面層。構(gòu)造HTML頁面的部分。構(gòu)造出來的頁面將被送回給用戶,它決定了交互結(jié)果的顯示形式和風(fēng)格。
3) 交互控制器層。控制其它元素的部分。處理HTTP請求,從業(yè)務(wù)邏輯層選擇要運行的組件,根據(jù)業(yè)務(wù)邏輯的運行結(jié)果從用戶界面層選擇相應(yīng)的組件,以構(gòu)造響應(yīng)頁面。
這三層正好對應(yīng)到經(jīng)典的M/V/C(Model/View/Controller,模型/視圖/控制器)范例。這一點很重要,因為不同層通常需要不同的開發(fā)技術(shù)和工具。應(yīng)用框架為各層提供使用各種組件的支持,這些組件之間有一個良定的接口。
3. 基礎(chǔ)設(shè)施服務(wù)
除了上述程序設(shè)計機制, 應(yīng)用開發(fā)者還需要運行時刻的服務(wù)來支撐Web應(yīng)用。方便地定位應(yīng)用組件、保證它們的可用性以及對它們安全的存取和執(zhí)行等等都是在Internet、Intranet和Extranet環(huán)境中實施Web應(yīng)用的關(guān)鍵要素。基礎(chǔ)設(shè)施服務(wù)為支持Web應(yīng)用提供下列設(shè)施:
1) 目錄服務(wù),本框架支持使用JNDI來存取基于LDAP協(xié)議的安全目錄服務(wù)。
2) 認(rèn)證授權(quán),這個設(shè)施能產(chǎn)生用來鑒別用戶和服務(wù)器的證書。公開密鑰技術(shù)已經(jīng)成為電子商務(wù)首選的可信賴的機制,而認(rèn)證授權(quán)是公開密鑰技術(shù)中的一個關(guān)鍵部分,它提供了數(shù)據(jù)保密、數(shù)據(jù)完整性、簽名驗證和用戶鑒別等特性。
3) 防火墻,它作為可信賴的內(nèi)部網(wǎng)絡(luò)和不可信賴的外部網(wǎng)絡(luò)之間的一個接口。通常,防火墻使用報文過濾器根據(jù)報文的源地址、宿地址、和服務(wù)類別(即端口號)來過濾報文流。使用防火墻來控制外部網(wǎng)絡(luò)中的那些(IP級)能允許存取內(nèi)部網(wǎng)絡(luò)、能使用那種類別的應(yīng)用服務(wù);同樣的模式能控制內(nèi)部網(wǎng)絡(luò)對外部網(wǎng)絡(luò)的存取。
4) 代理服務(wù)器,它起到為多個瀏覽器檢索Internet上數(shù)據(jù)的作用。作為客戶和Web應(yīng)用服務(wù)器之間的一個管道,代理服務(wù)器將客戶的請求遞交給有關(guān)的服務(wù)器并把服務(wù)器的響應(yīng)返回給客戶。這種工作方式還可以提供附加功能,如地址安全性和緩沖功能。
4. 外部服務(wù)
在這些外部服務(wù)系統(tǒng)中駐留著企業(yè)已有的應(yīng)用和數(shù)據(jù)、以及商業(yè)伙伴的服務(wù)系統(tǒng),如支付服務(wù)和外部信息服務(wù)。通常,這些應(yīng)用和服務(wù)系統(tǒng)控制著關(guān)鍵的商務(wù)過程,需要與Web服務(wù)器集成起來為顧客、業(yè)務(wù)伙伴和員工服務(wù)。
使用電子商務(wù)應(yīng)用框架開發(fā)和部署電子商務(wù)應(yīng)用系統(tǒng)帶來下列優(yōu)勢:
1) 極大地方便電子商務(wù)應(yīng)用系統(tǒng)的快速開發(fā)和部署。
2) 適應(yīng)任何客戶端設(shè)備。
3) 確保應(yīng)用系統(tǒng)能移植到各種不同的服務(wù)器環(huán)境中。
4) 利用并擴展已有的信息技術(shù)資源。
這也是形成這個電子商務(wù)應(yīng)用框架的重要原則。
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -