摘要:基于門戶的Web集成強調在盡可能保護原有投資、原有信息系統的基礎上對異構應用系統進行透明整合。提出一種基于門戶的Web集成體系,并研究與實現了有針對性的適應性模塊以提高對Web應用集成及外部變化的適應性。該研究對于整合Web應用系統,提高整合效率與可靠性有著重要意義。
關鍵詞:門戶;Web集成;Portlet;適應性
中圖分類號:TP393文獻標志碼:A
文章編號:1001-3695(2007)07-0208-03
隨著信息技術的發展,基于Web應用系統正逐漸成為構建內容與應用系統的主流方式。隨著這些往往由多種語言開發的異構Web系統的大量涌現,同時也形成了諸多的信息孤島[1] ,從整體上降低了信息處理的效率。從傳統應用整合的解決方案出發,想把這些彼此相對獨立、不能共享信息與協作的應用系統整合起來,是件相當費時費力的事情。
基于門戶的Web集成為解決整合問題帶來了新思路,其著重于在保護原有投資、原有系統基礎上透明整合的特色大大降低了應用集成所帶來的時間與成本上的高消耗[2]。在此基礎上針對整合對象(Web應用系統)的公共共享、不斷變化和日益增長等特征,探索解決門戶Web集成體系適應性問題[3]將會大大提高應用整合的效率。本文從異構Web應用系統透明整合角度,研究并提出一種基于門戶的Web集成體系,并在此基礎上探索了有針對性的適應性模塊,以提高對Web應用集成及外部變化的適應性。
1Web集成體系的提出
傳統應用集成體系主要包含四個層次[1]:用戶界面層次,統一分散的視圖;數據層次,集成分散的數據庫及數據源;業務過程層次,整合分散的業務流程;方法或函數層次,以請求/響應機制或適配器跨系統調用分散的業務邏輯。但由于傳統應用集成關注范圍不僅限于Web應用系統,在整合Web應用系統時會出現一些不足之處:成本高,傳統應用集成廣泛依賴對目標系統的功能修改,通過設計功能適配器達到整合的目的,而這些適配器設計本身就相當困難甚至可能超過Web應用自身;時間久,定義接口方法與交互機制相當耗費時間,而且很難適應Web環境下復雜多變的現實;實現難,傳統應用集成對局域范圍之外的應用整合的功能修改要求幾乎很多都是不可能實現的,而Web應用普遍分布相當分散。
Web集成可以看做是針對Web應用整合所興起的獨特有效的新理念,其出發點在于異構Web應用系統雖基于不同技術構建,但均通過HTTP協議交互信息以及HTML/XML協議展現內容。從這一共同點出發Web整合的關鍵就在于如何發現與利用現有Web應用所具有的基于HTML協議的內容展現與交互,獲取整合所需要的分散內容、數據與業務邏輯等資源。
2基于門戶的Web集成體系
2.1基于門戶的Web集成總體結構
門戶是以高度個性化的方式,提供交互訪問相關信息、應用軟件以及商業流程功能的軟件平臺技術。其實現基于組件的模塊化模型,可以將門戶組件(提供其自定義內容視圖的內容容器)便捷地插入到門戶基礎架構中。門戶組件通過門戶引擎(門戶服務器)運行,由組件容器進行管理,根據權限數據與個性化數據處理請求與輸入以及呈現適當的輸出。
在基于門戶的Web集成體系中,門戶平臺作為應用Web集成技術整合Web應用的組件載體,負責將Web集成所整合的資源以統一的標準界面予以展現;門戶組件則具體實現Web集成技術方法以與實現相應接口的目標應用系統的業務邏輯或封裝的Web服務進行整合。如圖1所示,用戶請求經由門戶引擎綜合權限數據與個性化數據,訪問由組件容器管理的門戶組件,再由其通過相應的集成接口與交通服務、訂票服務等業務邏輯、服務進行交互。
基于門戶的Web集成體系通過豐富多樣的聚合集成接口讓門戶平臺與分散的Web應用系統無縫交互,進而提供一站式的服務來實現所整合的應用系統所提供的分散功能需求。門戶平臺將分散的內容數據信息以壓縮簡單的形式予以呈現與聚合,并支持事務、遠程Web訪問。此外通過門戶平臺基于更改外觀的首選項、權限等豐富選項提供個性化和可定制的用戶體驗,能滿足不同的體驗需求。
實現Web集成的結果是充分挖掘利用了存在于分散Web應用系統中的結構與非結構化的資源和業務邏輯,進而提供更高層次的資源管理、挖掘、展現手段,以及跨系統業務流程運轉,實現信息資源價值利用的最大化。
2.2Web集成組件類型與接口設計
基于門戶的Web集成體系按照目標整合對象(應用系統或Web服務)的不同,提供多種類型的應用集成組件與相應接口。按照所實現的Web集成技術的不同,門戶組件通常有IFrame集成組件、內容聚合組件、Web服務組件等類型。
IFrame集成組件通過配置屬性參數可以靈活變更所嵌入的對象,無須關注目標對象內部(ASP、PHP或JSP)的具體細節,實現異構平臺異構網絡條件下的資源整合;通過將嵌入對象按照一定流程進行編排,能實現頁面層次的業務流程。對應的接口設計主要協調解決集成組件訪問外部資源的認證與定位問題。
內容聚合組件(基于RSS等標準)通過基于訂閱的內容交換過程、個性化的內容過濾與多內容來源搜索定制實現自動的內容聚合,提高內容處理與信息共享交流的效率。對應的接口設計主要協調解決組件與目標內容的標準匹配以及訪問認證等問題。
Web服務組件基于Web與WSRP開放服務標準,支持面向邏輯、數據與用戶呈現的Web服務。通過可配置的Web服務屬性參數避免了Web服務變更導致重新修改編寫客戶端的煩瑣過程。基于Portlet的代理機制查找與綁定遠程WSRP Web服務,具有良好的互操作性。此外,借鑒負載均衡機制,Web服務組件能在目標Web服務繁忙時進行備選Web服務的健康度探測,優先選擇性能優良的Web服務執行。對應的接口設計主要解決訪問標準Web服務,以及建立在Web服務請求與響應機制的WSRP服務的一系列過程協調問題。
這些集成組件與對應接口可以采用JSP、Struts等模式實現,并根據與目標應用交互方式的不同分為直接交互方式與經服務總線交互方式。利用門戶組件可插拔特性結合Web集成便捷、低成本、大大提高了Web應用整合的效率。
3基于門戶的Web集成體系適應性技術的研究
3.1適應性模塊的組成
適應性可以看做是當外部環境變化時實體的結構或行為可以隨之改變以適應變化的特性與能力。基于門戶的Web集成在進行Web應用整合時會面臨適應性方面的問題,比如針對具體Web應用需重復開發和部署Web集成組件,當故障或問題發生時無法定位故障或問題所在位置等。從分析所處生存環境變化入手,門戶Web集成的生存環境可以大致歸結為三個較明顯的不確定性:由于集成目標對象的不確定導致了用于Web集成組件的不確定性;由于門戶平臺自身的開放與可插拔所帶來的監視管理控制與審計的不確定性;由于門戶目標受眾復雜不確定所帶來的門戶個性化要求與安全的不確定性。
按照生存環境與其變化的方式,門戶Web集成適應性的類型與模式有兩種:本身能自動適應環境變化,也就是完全自適應;需要對其修改、配置(人工或自動)后才能適應環境變化也就是可適應。完全自適應對不可預見變化的適應能力較強,是一種主動性適應,而可適應只能適應可預見的變化,是一種被動適應。
由此在前文提出的基于門戶的Web集成體系中添加了針對性的適應性模塊如圖2所示:針對集成對象的適應性模塊(適應性集成組件);針對門戶組件的適應性模塊(性能監管以及審計模塊);針對門戶自身的適應性模塊(門戶組件組合適應模塊與授權安全適應模塊)。目標是使其針對不確定的目標整合對象有著良好的適應性,快速有效地應對外界變化,提高基于門戶進行Web應用整合的效率與可靠性。
(1)針對集成對象的適應性模塊
針對集成對象的適應性模塊由適應性集成組件組成(可適應與自適應)。面對不同的Web應用系統,這些門戶組件可以通過簡單修改配置或者自調整達到適應集成對象的要求,集成便捷、后期維護代價小,能靈活應對集成對象的不同所帶來的變化。
(2)針對門戶組件的適應性模塊
針對門戶組件的適應性模塊側重于門戶組件的監視管理以及審計,目標是使門戶運行更加穩定與可靠。這一模塊主要包括門戶組件運行整體性能監視組件、門戶組件故障預警與定位組件、門戶組件中長期趨勢預測組件與審計組件等。
門戶管理員可以借助整體性能監視組件監控門戶整體運行情況,前瞻性地掌握事務與會話信息、權限分布等運行期信息。當門戶組件或關鍵工作流領域性能到達預先設立的基準邊界條件時,故障預警與定位組件能自動采集與分析相關運行信息預計問題所在;當故障發生時,故障預警與定位組件會自動進行故障定位與故障門戶組件的屬性調整,協助門戶管理員快速對問題作出反應,盡量減少故障帶來的損失;中長期趨勢預測組件能借助收集綜合的相關信息,提供中長期的趨勢分析和容量規劃報告,為門戶的中長期發展提供合理建議;審計組件能對用戶所訪問過的Web集成組件記錄日志數據信息。
(3)針對門戶自身的適應性模塊
針對門戶自身的適應性模塊側重于解決由門戶受眾對象的不確定所帶來的個性化與安全要求的問題。當前門戶組件的組合通常由門戶管理員按照角色定制,而門戶訪問人群個性化要求的復雜性以及Web本身所具有的動態性、時效性決定了這種定制方式質量與效率的雙重低下。門戶(特別是公共門戶)的使用人群職業、年齡分布廣泛,但相同職業、相近年齡的人往往具有共性,借助于數據挖掘技術與演化算法就能優化出特定人群角色優先選擇的門戶組件集合。在安全方面主要著眼于對多種認證授權方式的適應性,包括用戶名密碼認證、數字證書認證等,使得門戶自身更安全、更健壯。
3.2關鍵功能的實現
上述各個適應性模塊以及各具體的適應性組件,在實現方法上可以綜合使用適應性實現技術:條件表達式,根據條件表達式的評估結果執行相應程序;在線算法,建立在對未來事件不確定假設的基礎上利用問題域或輸入域知識實現自適應;類屬算法,通過類型實例化或外部輸入達到行為參數化進而實現對變化的適應;算法選擇,根據運行環境特點及約束在一組算法中選擇最有效的算法執行;遺傳算法及演化計算,根據運行環境特點和適應環境的歷史記錄生成新算法,綜合了機器學習、演化計算、遺傳算法等人工智能領域的知識。此外,Web 智能(Web Intelligence, WI)與情形敏感計算等當前研究熱點也提供了諸多有價值的實現理念與方法。
基于門戶的Web集成可以說是一種松耦合的資源集成,使得散亂的資源在門戶平臺上重新組合達到資源整合的目的。同時,當用戶訪問這些資源時,留下必要的痕跡以支持審計功能是非常有必要的,為此設計了支持審計的功能組件(圖3)。
審計組件被設計為門戶插件形式,它會在以下時刻記錄痕跡如圖4所示。在門戶引擎接收到用戶請求建立Portlet Ma-nager時記錄用戶登錄信息;在Portlet Manager創建Control Tree實例初始化對應Portlet生命周期時記錄訪問Portlet信息;在Control Tree訪問用戶權限數據Entitlements時記錄用戶訪問時具有的權限等。通過這些記錄的特定痕跡數據信息,可以支持日后用戶不同時間以不同權限訪問各個Web集成組件的審計功能。
根據資源類型的不同,訪問資源的痕跡數據存放位置也有所不同。如圖1總體框架圖所示,Web服務資源將會調用服務總線所提供的記錄接口記錄痕跡數據,其他資源可在組件中直接訪問數據源記錄訪問數據。此外,審計組件還提供了豐富的報表與視圖以供日后審計工作的開展。
4結束語
基于門戶的Web集成強調在盡可能保護原有投資、原有信息系統的基礎上進行透明整合,達到信息資源利用價值的最大化。在此基礎上研究對復雜多變Web環境的適應性將使得這一集成框架變得更加高效與可靠。目前已經應用適應性原理分析了門戶Web集成的生存環境,初步勾勒與實現了有針對性的適應性模塊。在此基礎上將進一步對各個模塊分別展開更深層次的研究,探索與建立完善的應用于Web集成的適應性門戶框架。
參考文獻:
[1]袁占亭,張秋余.基于Web Services的企業應用集成解決方案研究[J].計算機集成制造系統,2004,10(4):712-720.
[2]趙勇,馬殿富.遠程門戶組件的Web服務的研究與實現[J].計算機應用研究,2004,21(11): 247-250.
[3]李剛,金茂忠.適應性軟件體系結構研究[D].北京:北京航空航天大學,2002.
[4]PARIKH A. Teaming up portals and Web services [EB/OL].[2004-05].http://www.fawcette.com/javapro/2004_05/magazine/features/aparikh/.
[5]KROPP A.WSRP specification 1.0[EB/OL].[2003-04].http://www.oasis-open.org/committees/download.php/3343/oasis-200304-wsrp-specification-1.0.pdf.
[6]張程,韓燕波. 一種適用于服務組合平臺的語境信息使用模式[J].計算機學報,2005,28(4):394-414.
[7]王本年,高陽,陳世福,等.Web智能研究現狀與發展趨勢[J].計算機研究與發展,2005,42(5):721-727.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”