曾文藝 梁藝
【摘要】本文將SOA思想引入到傳統單機版文本處理系統中,研究出了基于SOA的文本信息處理系統架構模型,通過該模型的使用,系統有了較好的松散耦合性和可重用性,并加快了開發速度。
【關鍵詞】B/SSOA文本處理架構模型
一、研究目的
為了將C/S文本處理系統在互聯網上進行推廣,需開發出一款基于B/S架構的文本處理系統版本。那么,在開發周期短、成本有限的前提下,如何在最大程度地重用已有C/S系統各功能模塊的基礎上快速構建B/S系統呢?
面向服務體系架構(SOA)的興起為解決上述問題指明了方向,把SOA架構思想引入到文本處理系統將是一個很好的嘗試。
二、基于SOA的web應用系統模型
從整體架構來看,基于SOA的WEB系統由若干服務和服務組合構成。微軟的基于SOA的web應用系統模型如圖1所示:
(1)表示層:主要提供友好的用戶界面。(2)業務外觀層:主要提供標準化的服務接口。(3)業務層:主要提供系統的業務邏輯和控制。(4)數據訪問層:主要提供業務組件和底層數據的一個平滑過渡。(5)數據層:主要提供數據信息數據邏輯。
三、基于SOA的文本信息處理系統架構模型
對于文本處理系統而言,主要是對批量文本的處理,涉及到的是復雜的業務邏輯,可以省略數據層和數據訪問層,重點突出業務層和業務外觀層。
3.1網上文本處理系統物理架構
基于SOA的網上文本處理系統在物理架構上采用了業務邏輯和具體實現相分離的思想,部署了兩臺服務器——網頁服務器和服務服務器。具體物理架構如圖2所示:
網頁服務器存放JSP頁面,具體的各項功能實現通過服務的形式部署在服務服務器上。遠程用戶通過瀏覽器訪問網頁服務器的頁面,頁面服務器根據遠程客戶端提交的處理需求調用服務服務器上的相應服務,實現真正意義上的對客戶端上傳的文本文件的處理,服務服務器將處理完成的文件傳送給網頁服務器,網頁服務器通過網頁的形式將結果顯示到客戶端。
3.2網上文本處理系統體系架構
根據本系統的應用規模和需求,結合基于SOA的WEB應用系統的5個層次,網上處理系統采用三層結構,分別為:表示層、業務外觀層、業務層。如下圖3所示:
(1)表示層:主要提供友好的用戶界面。不同的功能模塊由不同的JSP頁面提供。(2)業務外觀層:業務外觀層主要在網頁服務器端實現。本系統的業務外觀層的服務注冊中心負責對服務服務器所提供的所有服務接口的注冊、發現和查找,通過在JSP頁面中對于不同的文本處理請求調用不同的服務接口來實現對客戶請求的處理。在具體實現上,可以采用Web Services中基于XML的遠程調用方法RPC[3] 調用服務。(3)業務層:業務層集中了系統的功能業務的處理。系統所提供的每一個功能以服務的形式部署在服務服務器上。在實現上,用Tomcat充當Apache AXIS Web應用的容器,而AXIS Web應用又充當Web服務的容器。將原系統的每一個文本處理功能的DLL抽取并分離開來,采用Web Service技術在EClipse平臺下將其打包成服務,并部署在Tomcat的Axis服務容器下。
四、總結
本文研究出了基于SOA的文本信息處理系統架構模型,通過該模型的使用,使得所開發的文本處理系統有了較好的松散耦合性和可重用性。
參考文獻
[1]李慧盈,李德昌,段羽,呂邦國. 利用J2EE構建XML Web Services的研究[J]. 計算機工程與應用. 2003
[2]張志強,張景,張志剛,李軍懷. 基于web services的應用系統開發初探[J]. 計算機應用. 2004(5)
[3]柴曉路,梁宇奇. Web Services技術、架構和應用[M]. 電子工業出版社,2003