已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种面向服务的数字图书馆体系架构邹 凯陈添源 ( 湖南湘潭大学管理学院 湘潭 411105)【摘要】 认为SOA是数字图书馆实现以用户的信息需求为中心、提供多种功能服务的体系架构的理想解决方案。文中详细介绍了SOA(service-oriented Architecture,面向服务的体系结构或面向服务架构)的体系架构模型、原则和实现方式,并回顾分析数字图书馆主流的体系结构及存在的主要问题,针对这些问题,提出了利用SOA实现数字图书馆跨异构、异质资源的“整合创新和随需而变”的体系架构思路。【关键词】SOA 面向服务 数字图书馆 体系架构A Service-Oriented Digital Library ArchitectureZou Kai Chen Tianyuan(Management School of Xiangtan University Xiangtan 411105)【Abstract】SOA is considered to be an ideal solution for digital libraries to deploy an architecture which focuses on users information requirement and provides multi-function services. This article introduces the model, the principle and the achieving way of SOA (service-oriented Architecture) architecture in details, and analyzes the chief problems of digital libraries mainly architecture at present as well. It sets forth a problem-solving project on the requirement-followed architecture which helps to the conformity and innovation of digital libraries different structure and heterogeneity resources with SOA.【Key Word】SOA;Service-oriented;Digital Library; Architecture引言数字图书馆的基本目标是创造一个良好的信息环境,通过Internet提供对分布式存储信息的知识化组织、智能化访问和服务。在数字图书馆的发展推进过程中,由于不同组织建设数字图书馆的目的、方式、运行手段等的不同,导致其采用的操作系统平台、通信协议、软件框架体系结构各不相同。正是数字图书馆这种分布式、异构式的特点决定了当前数字图书馆要实现异质、异构数字资源系统的有效信息整合,必须解决在已有的信息基础设施上设计实现新的软件体系架构,使各种数字信息服务在该架构上达到统一,更好地适应数字图书馆的各类业务服务需求。而当前主流的分布式数字图书馆体系架构采用面向对象的模型,由于面向对象体系结构本身依赖于具体的编程语言、封装粒度小、耦合度高,造成面向对象体系结构难以形成标准和开发规范,不能达到软件重用的可移植性和互操作性要求,结果产生大量的“对象孤岛”和“数字信息孤岛”。SOA(service-oriented Architecture,面向服务的体系结构或面向服务架构)作为一种不局限于任何特定技术或厂商的体系架构方法,它能够使组织快速开发、部署和管理一系列可共享的业务服务,从而将数字图书馆中分散的功能单元组合成可互用的、基于标准的服务,实现“整合创新和随需而变”的体系架构理念。1 SOA概述 1.1 SOA体系架构模型面向服务的体系结构(service-oriented architecture, SOA)准确地说是一个组件模型,它将应用程序的不同功能单元(也称为服务)通过彼此之间定义良好的接口和契约联系起来。接口采用中立的方式进行定义,并与实现服务本身的硬件平台、操作系统及具体编程语言等无关 中科永联.SOA. 2006.6.6./html/news/erp/116.htm.(Accessed Sept 20,2006)。这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。其具体的协作如图1所示。Service RegistryService ConsumerService ProviderFindBind and InvokeService DescriptionPublishServiceService Description图1 面向服务的体系架构模型SOA具有类似三角形的结构,其相互支撑的三个顶点分别为服务提供者、服务使用者和服务注册中心,它们各自承担着服务发布、服务查找和服务绑定三项操作。服务提供者向服务注册中心发布服务,服务请求者通过服务注册中心查找所需的服务,并绑定到这些服务上。当然服务提供者也可以直接与服务请求者实现交互。在SOA架构下,“服务”成为应用系统的基本组件,使得IT技术与业务有机的结合在一起。SOA中的服务代表的是一个由服务提供者向服务的请求者发布的处理过程,它包含两个层面的含义,其一是它在相对较粗的粒度上对应用服务或业务模块进行封装与重用,实现端到端业务流程的一整套服务;其二是利用显式的、与实现无关的接口来定义服务,以有效支持灵活的、动态重配置的流程。“服务”是SOA的核心,它指的是业务服务,例如更新一项贷款申请是一个业务服务,但更新数据库中的一条记录则不是;服务须连接在一起来实现业务流程,因为业务流程引擎能更容易地将服务组合为业务流程。1.2 SOA架构原则、关键组件及功能为了实现SOA架构,部署实施的基础架构必须支持SOA原则。这个原则一般可以表述为:SOA在相对较粗的粒度上对应用服务或业务模块进行封装与重用;服务间保持松散耦合,基于开放的标准,服务的接口描述与具体实现无关;灵活的架构服务的实现细节,服务的位置乃至服务请求的底层协议都应该透明 李珉.企业服务总线解决方案剖析,第1部分:企业服务总线的基本概念. 2005. 8.1/developerworks/cn/webservices/ws-esb1/.(Accessed Sept 22,2006)。另外一方面,一旦按照SOA的思想提炼出各种业务服务并且准备对外发布服务,以便随时被服务对象调用。就需要在SOA中架构一个中间层,实现在SOA架构中不同服务之间的智能化管理。部署时最后要考虑的重要因素是这样的架构能支持对现有IT系统的重新利用,先前开发的服务可以被重用,实现“一次组合,多次利用(COLA,ComposeOnceLeverageAnywhere)” San Jose, Aschheim-Dornach.Pressemeldungen 2005. 2005.6.10. /presse/2005/050610_01.jsp. (Accessed Sept 25,2006)的高效性,延长现有应用系统的生命周期。服务总线(Service Bus)以提供集成的通信、消息传递以及事件基础架构支持服务交互功能成为 SOA 基础架构的关键组件,有时也被称为分布式基础架构,以企业服务总线(Enterprise Service Bus)为例,如图2所示。“服务总线”是一种逻辑体系结构组件,它提供与SOA的原则保持一致的集成基础架构,真正体现了SOA的理念,一切皆为服务,服务在总线(BUS)中处于平等的地位。在“服务总线”这个关键组件架构上,被集成的对象被明确定义为服务,极大简化了在集成异构性上的考虑,帮助建立以服务为核心的基础架构平台,真正实现“弥合业务服务与IT服务之间的鸿沟”。“服务总线”提供了最基本的功能保障SOA系统的运行,这些功能包含如下内容:在总线范畴内对服务的注册命名及寻址管理功能(服务的Meta-data管理);面向服务的中介功能,例如提供位置透明性的服务路由和定位服务、多种消息传递型式和支持广泛使用的传输协议;支持多种服务集成方式,比如 JCA、Web 服务、Messaging、Adaptor。 对服务管理的支持,如服务调用的记录、测量和监控数据的提供。图 2 分布式ESB基础架构 李珉.企业服务总线解决方案剖析,第1部分:企业服务总线的基本概念. 2005. 8.1/developerworks/cn/webservices/ws-esb1/.(Accessed Sept 26,2006)2SOA数字图书馆的新体系架构纵观数字图书馆的发展历程,由传统图书馆向数字图书馆的转变首先经历了图书馆自动化,主要使用集中式计算机系统来实现传统的采编流通以及公共目录查询等大量的C/S结构的应用;后来又引进了PC机和工作站,进而单机联网成为网络系统。在这样的系统中,同时存在着大型机、SUN工作站、Macintosh机、PC机,运行着Windows、Solaris、Unix以及专用的操作系统和各种类型的数据库,同时各个图书馆的网络体系结构以及采用的通信协议也都有可能不同。在这样的基础之上建设的数字图书馆,网络环境中必然存在异构操作系统、异构网络、异构数据库 李秀.数字图书馆的互操作与分布式构件技术.现代图书情报技术.2002(1):21-24。而我们就是要在如此复杂的网络环境中实现数字资源的整合,实现已有系统的移植和新系统的引入,进而达到基于物理载体的管理向数字资源的管理转变,基于“拥有”的服务向基于“可获得”资源服务的转变,最终实现“动态构建满足各种用户群和业务流程需要的信息服务系统” 黄晓斌,钱国富.数字图书馆开发平台及其发展趋势.2005(4):53-57。由于分布式构件技术在异构平台兼容、集成已有系统方面有着独特的优势,当前主流的分布式数字图书馆体系架构如CORBA、COM/DCOM和JavaBean均采用面向对象的方法给出软件构件的定义,包括一组通用的对象服务以及使用规范,从而提供完整的分布对象运行环境,为快速开发可靠实用的多层数字图书馆C/S网络应用创造条件。随着应用技术的快速发展和信息资源个性化需求服务的不断增加,软件架构师和IT技术人员开发出针对这些分布式系统的异质组件来实现信息服务业务流程整合。然而,这些异质组件是在对象基础上衍生的组件,是对象的封装体,其特点是通过接口技术将一些相关对象有机地组合在一起,提高了抽象粒度级别,但是由于各种组件技术不兼容而直接影响了在分布式系统中的应用。尽管两者都在努力的改进以便能够互相兼容,但IT人员不得不花费大量的精力和时间处理它们的兼容性,从而使支撑信息服务业务流程的IT体系架构和环境愈加复杂。即使没有异质组件的兼容问题存在,组件之间仍然需要深度的互相了解。除了知道数据传输协议和数据报文格式以外,还必须知道它的准确位置,并且还要很清楚地了解有关其接口的一切,以便应对接口变化。这种构架模型明显是一种“紧耦合”的模式。SOA是在面向服务体系结构基础上扩展的新体系结构,形成SOA的基本元素是服务,它是组件的封装体,相对于组件来说,服务是更高一级的抽象级别。它在实现时不需要从一个请求到另一请求的信息或状态,也不需要依赖于其他服务的上下文和状态,以一种“松耦合”的模式来促进系统的灵活性和敏捷性,实现整个体系架构对业务需求的快速响应。2.1 SOA的信息服务理念与数字图书馆的业务服务理念“不谋而合”当前数字图书馆的核心业务服务理念始终围绕着“异质、异构数字资源整合与为信息需求用户提供多样化、个性化的信息服务”之间的矛盾而展开:面对越来越多的异质、异构的数字资源系统,怎样对其进行集成、重组、整合,建立有关联性的资源体系,以解决“数字信息孤岛”,提高数字资源的利用率一直是当前数字图书馆信息资源整合的研究目标,另外一方面,数字图书馆的服务应是智能化的知识服务,不仅能为用户提供高效、个性化、便捷的检索服务,同时应向用户提供统一的智能化的知识获取手段,向用户主动、及时、准确地提供所需信息和知识 马文峰.数字图书馆与资源整合.2006年数字图书馆前沿问题高级研讨班会议讲义.2006.8.16。信息服务就是SOA的核心基因,这一理念的提出本身就是为了应对IT环境的变化。它将业务层和技术层之间的信息有效地进行沟通,让企业应用层可以彻底摆脱技术的束缚。通过将注意力放在服务上,应用程序能够集中起来提供更加丰富、更加灵活、目的性更强的信息服务流程,使得基于SOA的应用系统更加真实地反映出与业务模型的紧密结合。2.2 SOA为数字图书馆的异构、异质信息资源整合“量身定做”在数字图书馆的软件体系结构发展历程中,从分层的体系结构、面向数据和对象的体系结构到知识库体系结构等数次变革来看,这些体系结构无疑都是为了满足读者的信息资源需求,更好地促进图书馆的信息服务业务,从而解决不断增加的复杂程度。从层级结构的观点来分析,当前数字图书馆采用的软件体系结构通常都是在计算机硬件、操作系统和网络基础设施之上构成资源管理、业务逻辑和应用表现三个层次,由于每一次均呈现异构、分布、自主和随需应变等特征,导致了整个体系结构在系统集成方面的复杂性。基于SOA的体系架构能够将数字图书馆的数据和内容有效整合以应对用户的个性化信息需求,屏蔽一切应用上的困难,比如分布结构和异构障碍,直接提供面向终端的服务。利用现有信息资源,实现、增加程序功能部件的重复利用,减少开发成本,加快新应用的部署,降低实施风险,促进信息服务业务流程的不断优化。3 基于SOA的数字图书馆体系架构实现3.1设计思想及体系架构实现方式设计基于SOA的数字图书馆体系结构的目的在于:在众多分布、异构和自主的信息资源系统组成的开放环境中,数字图书馆可以敏捷地根据具体的信息需求用户的个性化需求,发现、解析和调用所需要的资源和服务,按照个性化的服务流程和业务逻辑将信息资源或服务灵活组织起来构成新的服务,从根本上解决业务功能上的“重用”和“互操作”问题,实现数字图书馆服务的动态定制。 在SOA这一种革命性的体系架构下,数字图书馆能够整合已有应用系统,释放其功能或数据为可重用的服务与业务流程,实现对各种业务需求的灵活应变。但需要强调的是,尽管J2EE和.NET是目前开发SOA应用程序常用的平台,但SOA不是Web服务,“Web服务是技术规范,而SOA是设计原则。特别是Web服务中的WSDL,是一个SOA配套的接口定义标准:这是Web服务和SOA的根本联系。” 从本质上来说,SOA是一种架构模式,而Web服务是利用一组标准实现的服务,加上Web服务中的WS-I协议保证了来自不同厂商的Web服务即使运行在不同的平台上,底层的实现机理不同也可以顺利交互,这是以前的任何一种技术如CORBA,EJB,或DCOM都不能做到的。而且,Web服务的定义与实现是分开描述的,即松散耦合,这就从技术上实现了“整合创新和随需而变”的架构理念。因此,基于SOA原则(满足 SOA 的互操作性和平台无关性)并结合IBM的参考架构 IBM. WebSphere Business Integration Server Foundation V5.1 Handbook.2004.11.12./abstracts/sg246318.html?Open.(Accessed Oct 2,2006)作者简介:邹 凯,男,1965-10,博士,教授,湘潭大学管理学院,湘潭,411105。陈添源,男,1979-9,硕士,助教,湘潭大学9006#,湘潭,411105。,本文设计实现具有高服务质量和 Web 服务标准支持的 SOA 数字图书馆体系架构。3.2 体系架构通信和消息处理、交互和安全性控制、服务质量级别管理和自治、基础架构智能数字图书馆服务总线(Digital Library Service Bus)面向SOA开发的高效重用服务Internet上有用的文献信息资源已建图书馆业务系统数字化特种馆藏商用的网上联机电子出版物或数据库WSDL Interface:SOAP/HTTPRMI/IOP InterfaceJCA InterfaceXML Interface:XML/MQ个性化服务检索服务数字参考咨询服务其他数字图书馆协作服务灵活定制的未来服务数字图书馆门户网站服务基础设施层服务层业务层服务用户层WSDL Interface:SOAP/HTTPWSDL Interface:SOAP/JMSXML Interface:XML/MQ图3 基于SOA的数字图书馆体系架构整个体系结构分为四层,服务基础设施层、服务层、业务层和服务用户层。服务基础设施层该层是数字图书馆的信息基础设施,在SOA架构下分为信息资源部分和应用系统部分。数字图书馆的信息资源主要有图书馆本身的数字化特种馆藏、商用的网上联机电子出版物或数据库和Internet上有用的文献信息资源
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《课件背景动感》课件
- 红河学院《政治学原理》2023-2024学年第一学期期末试卷
- 员工健康管理案例分析报告
- 动词过去式和过去分词
- 第02讲 导数与函数的单调性(学生版)-2025版高中数学一轮复习考点帮
- 《急诊医学课件休克》课件
- 北师大版七年级下册数学第一次月考试题期中考试卷
- 三年级体育教案足球脚内侧传球
- 《科学合理饮食》课件
- 夏朝名君夏代著名君主
- 新版RoHS环保知识培训教学内容
- 2025届炎德英才大联考物理高二上期末学业水平测试试题含解析
- 2024年执业药师资格继续教育定期考试题库附含答案
- 蚯蚓与土壤肥力提升2024年课件
- 店铺管理运营协议合同范本
- 天津市和平区2024-2025学年高一上学期11月期中英语试题(含答案含听力原文无音频)
- 2024年全国烟花爆竹储存作业安全考试题库(含答案)
- 2024年高中化学教师资格考试面试试题与参考答案
- DB11-T 2315-2024消防安全标识及管理规范
- 全科医生转岗培训结业考核模拟考试试题
- 吃动平衡健康体重 课件 2024-2025学年人教版(2024)初中体育与健康七年级全一册
评论
0/150
提交评论