〔摘 要〕SOA是一種IT戰略,它把分散的應用系統組織為可被迅速組合和重用的標準的服務,從而實現應用的集成。本文討論了基于SOA(service—oriented architecture)來架構圖書館應用支撐平臺的構成和主要技術標準。
〔關鍵詞〕圖書館;應用支撐平臺;SOA
〔中圖分類號〕G250 〔文獻標識碼〕B 〔文章編號〕1008-0821(2009)04-0136-03
The Construction of Library Application
System Supporting Platform Based on SOAPan Xu1 Liu Guoqing2
(1.Library,Southwest University for Nationalities,Chengdu 610041,China;
2.Chengdu Command College of Chinese Armed Policeforces,Chengdu 610213,China)
〔Abstract〕SOA is an IT strategy,it can organize the scattered application systems to standard services which can be rapidly reused and combined,and realize the combination of applications.This paper discussed the construction and main techniques of library application system supporting platform based on SOA.
〔Key words〕library;application supporting platform;SOA
當前,圖書館應用系統種類繁多,應用復雜,按照服務不同,館內通常建有門戶網站服務系統、館內讀者網絡服務系統、圖書館業務集成系統、協同辦公系統、數字資源加工系統、數字資源存儲管理與檢索系統、虛擬參考咨詢系統、視頻點播服務系統、一卡通系統、電子閱覽室系統、多媒體電教室系統、視障讀者服務系統、多媒體導讀系統等等,面對如此眾多的系統和業務,單個應用程序顯然無法包容各種需求,一個特定的業務需求就需要一個應用,而業務需求一旦發生變化,應用就需要重新開發和部署。由此導致了各系統之間共享性、兼容性、靈活性差,增加了人員培訓的成本,降低了應用實施的效果。
那么,如何打造出滿足當今隨需應變圖書館業務環境所需的敏捷IT基礎設施,從而提高圖書館業務流程的靈活性呢?用傳統的以核心應用為中心的技術平臺和開發模式,即使是一個大型的綜合信息平臺解決方案,仍然不能滿足需求的不斷膨脹和變化,只能通過不斷開發新應用,擴展現有應用程序來艱難的支撐其現有的業務需求。SOA(面向服務架構)通過將注意力放在服務上,應用程序能夠集中起來提供更加豐富、目的性更強的流程,從而更加真實地反映出與業務模型的結合。
1 SOA簡介
SOA(Service-Oriented Architecture,面向服務架構)是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過他們之間定義良好的接口和契約聯系起來。接口是采用中立的方式進行定義的,它應該獨立于實現服務的硬件平臺、操作系統和編程語言。這使得構建在各種系統中的服務可以以一種統一和通用的方式進行交互。可以認為,SOA是以往面向對象模型的替代模型,雖然它并不排除使用面向對象的設計來構建單個服務,但是SOA整體設計卻是面向服務的[1]。SOA的應用參考架構如圖1所示。

由圖可知,要將服務部署到圖書館體系架構中會涉及到許多連續統一的活動,這些活動可分成三個階段[2]:
1.1 構建服務
在部署和運行服務以前,必須先構建服務。可通過IBM Rational等軟件開發平臺將各應用遷移到SOA,由此簡化和加速業務流程建模以及面向服務應用系統的設計、構造、組裝和測試,從而幫助圖書館獲得所需的IT靈活性。
1.2 實施和運行服務
為了部署已構建的服務,在SOA運行時,需要編排業務流程,并將各種功能拼接成復合應用;需要在企業內部以及在防火墻內外使用他人提供的服務;需要基于角色的內外部用戶界面以及來自多個信息源的單一信息視圖;需要將所有數據庫當作一個數據庫進行操作以查詢信息。
1.3 管理服務
在SOA成功運行后,需要一種將復合應用和SOA環境的管理納入整體安全性和系統管理環境的方法。其中包括發現、監控、保護和管理Web服務與SOA環境的能力,以及為現有IT基礎設施提供相關性管理、事件管理和服務水平管理。SOA部署的前瞻性監控和管理能夠提高Web應用程序、門戶解決方案和基于SOA的解決方案的可用性。
2 圖書館應用系統支撐平臺建設
應用系統支撐平臺即通常意義上的中間件,它在網絡和基礎服務之上、應用系統之下,在信息系統的軟件平臺中起著承上啟下的作用。它架構在基礎服務層,利用基礎服務層的各種服務來實現自己的功能[4]。
2.1 平臺設計目標
應用系統支撐平臺是圖書館應用系統的基礎,它支撐應用軟件的開發、部署、運行及管理,為各個應用系統提供一個統一的、開放的、可伸縮的、安全的、可互操作的、數據共享的基礎環境。其設計目標應包括以下幾點:(1)為應用系統層提供標準的應用系統開發、運行及管理的應用框架。(2)為應用系統層提供應用系統集成、業務流程集成和數據集成的標準規范。(3)為應用系統層提供應用系統集成、業務流程集成和數據集成三大基礎,以及這些基礎的開發部署環境。(4)為應用系統層的各應用系統以及門戶提供應用服務器容器[1]。
2.2 平臺的主要構成
應用支撐平臺由圖書館應用系統的統一應用運行平臺、統一應用集成平臺、統一數據交換平臺、統一數據集成平臺等系統構成。
2.2.1 統一應用運行平臺
應用運行平臺是應用支撐平臺的基石,提供圖書館各應用系統開發、部署與運行所需的環境。采用三層邏輯結構,即:界面表現層、邏輯應用層和數據層,可實現系統集中維護共享信息,自動實現Web信息發布以及面向各類用戶的查詢服務及管理。
此平臺使用中間件技術將中心數據庫和具體的應用程序分離,提供了一個易于擴展的業務架構。應用系統的所有前端應用全部在前臺應用服務器上,通過中間件建立分布式應用程序架構,數據庫系統放置在后臺數據庫服務器上,將共享數據庫和各種具體業務應用全部通過業務邏輯層進行信息的交互,達到應用與數據的完全隔離,增強系統的安全性和靈活性。
2.2.2 統一OA辦公平臺
此平臺采用Lotus Domino來實現統一的辦公自動化,辦公自動化系統提供了個人事務、公文管理、會議管理、公共信息、內部交流以及行政管理等應用,在注重協調工作的同時,更加強調基于個人的個性化服務特征,增加了個性化的信息管理功能。系統集合了來自各方面的信息,同時集成了所需的數據和應用,提供了一個各種信息知識的入口點和知識管理平臺。比如圖書館讀者信息服務系統的實現,可以利用Domino平臺的Internet技術實現網上讀者服務,將Domino/Notes工作流處理技術運用到讀者授權,對外是完全的WEB系統,對內則使用安全可靠的Notes工作流系統,讀者可在該系統的支持下進行查詢信息等工作。
2.2.3 統一數據交換平臺
此平臺采用企業服務總線來實現數據交換,是應用集成的基石,通過消息機制實現圖書館各應用之間的數據交換、數據路由、消息格式變換、通訊協議轉換等;實現圖書館與上級部門之間的數據交換。
WebSphere Message Broker是IBM提供的一個優秀的消息中間件,能滿足圖書館統一數據交換平臺的要求。它提供了一個簡單但又比較完善的途徑,使圖書館其它系統平臺能夠將消息數據正確地送到目的地,達到統一數據交換的目的。
2.2.4 統一流程集成平臺
此平臺采用基于SOA技術構建實現。通過SOA,根據服務的參考模型,一方面整理圖書館現有的應用系統,將各個應用系統的功能模塊封裝成標準的服務(WSDL),另一方面規范新的業務功能的開發。通過企業服務總線(ESB)實現各服務之間的連通性,通過流程的編排實現業務流程自動化。
2.2.5 統一內容管理平臺
使圖書館可以在一個綜合的數據環境中,對結構化和非結構化數據內容(如圖書、音像)進行收集、管理、重塑和發布。內容可以與穩定可靠的元數據鏈接在一起,因此檢索和重取都十分高效和準確。該平臺不僅允許在整個機構內部或機構外的授權用戶進行內容的訪問、共享和交付,而且可以創建一個可擴展的、永久保留原貌的數字信息內容資產檔案,因此非常有利于未來的發展,可以適應未來的各種需要。使用統一內容管理平臺,可以讓工作流實現自動化,讓視頻、音頻和成像數據的捕獲、轉化、檢索和分析等步驟都得到大大簡化。它提供了在Intranet或Internet上立即訪問文檔信息的能力,可以有效地保證所需要的文檔按照正確的工作流程在正確的時間提供給正確的使用人員。
2.2.6 統一信息服務平臺
用于圖書館對外政策宣傳,作為提供信息化服務的窗口,是直接與讀者接觸、交流的工具。包括門戶網站、觸摸屏、呼叫中心等子系統。該平臺可提供對信息、應用和服務的單一、個性化的訪問,實現圖書館統一對外的網上門戶,建立融中心網站、網上辦公、各種圖書館應用系統平臺于一體的綜合性門戶網站。
2.2.7 統一系統管理平臺
統一系統管理平臺的建設目標是建立統一高效的監控系統,覆蓋網絡、服務器、數據庫、中間件、應用等IT系統的各個方面。做到對所有業務系統、數字加工系統和網絡通信系統的統一監控與管理。一方面使管理人員有能力獲得整個圖書館內各個資源的運作信息,加強對IT資源的控制力;另一方面,利用平臺全面的統計分析能力幫助管理人員提升對系統運作現狀的理解程度,從而可以了解系統運行的規律和發展變化的趨勢,保證整個系統的高可用性和高可靠性。
2.2.8 統一安全管理平臺
建立全面的安全管理機制,從軟、硬件多方面對系統安全進行管理,確保各個系統安全、穩定地運行。實現統一的用戶管理、用戶認證、用戶授權、審計跟蹤等。
以上八大平臺,在具體建設的過程中,應按照高度抽象的法則封裝成SOA的服務,其總體架構如圖2所示。

2.3 使用的技術
在圖書館應用系統支撐平臺建設過程中,應盡量采用先進成熟的主流產品與技術,執行開放性的標準。我們認為,應采用J2EE規范,用XML進行數據交換,以WSDL(Web Services Definition Language)來描述服務,通過UDDI(Universal Description,Discovery and Integration)倉庫進行注冊,業務功能模塊應提供Web Services接口,圖書館信息服務申請者可通過SOAP(Simple Object Access Protocol)提出服務請求并獲得服務[3]。
可以選用IBM SOA相關軟件工具來實現圖書館應用系統支撐平臺的構建,如采用WebSphere Message Broker來滿足圖書館統一數據交換平臺的要求,用基于BPEL標準的流程引擎WebSphere Process Server來實現圖書館統一應用集成平臺,用WebSphere Business Integration Modeler,WebSphere Integration Developer,WebSphere Business Integration Monitor等工具來進行業務流程的建模、開發和測試管理,用IBM Tivoli Monitoring(ITM)實現圖書館的統一系統管理平臺等等[4]。
3 結束語
用SOA架構圖書館應用系統支撐平臺,解決了傳統架構技術無法解決的問題,取得了很大進步。采用SOA方案實施平臺架構,可以保護早期IT投入,節省開支,并可快速隨著個性化需求變化隨時優化圖書館的服務[3]。
參考文獻
[1]童鑫,李軍義.面向SOA的企業服務總線研究與實現[J].計算機應用,2008,(3):819-822.
[2]陳輝雄,樂美龍.基于SOA架構第三方物流信息系統設計與分析[J].物流科技,2008,(3):77-78.
[3]楊彥輝.基于S0A的圖書館信息綜合服務系統[J].圖書館學刊,2007,(2):134-135.
[4]IBM Corporation.IBM WebSphere Enterprise Service Bus(ESB)[EB].http:∥www.ibm.com/developerworks/cn/websphere,2007-09-01.