基于SOA的网络信息资源集成研究,本文主要内容关键词为:信息资源论文,网络论文,SOA论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
所谓网络信息资源集成,是指人们根据网络信息资源本身的特点和属性,运用各种工具和方法,对网络信息资源进行搜集、加工、整理、排列、组合,使之有利于网络信息资源的存储、传播、检索、利用,以满足人们的网络信息需求的活动过程①。
1 网络信息资源集成引入SOA
1.1 SOA的概念与结构
面向服务架构(Service-Oriented Architecture,SOA)是伴随着企业、政府及互联网上出现的大量“信息孤岛”而产生和发展起来的。
SOA的思想是著名咨询公司Garter于1996年提出的②,并将其定义为:“一种client/server软件设计方法,其中应该含有软件服务和软件服务使用者(也称客户或服务请求者)。SOA不同于通常的client/server模型,它更强调软件组件之间的松散耦合和使用分散的标准接口。”③
2006年10月,结构信息标准化促进组织(OASIS)发布了SOA参考模型1.0版,其中将SOA定义为“一种模式,它能够在多个不同的权限域的控制下组织、实现分布式的应用。”④
SOA结构呈三角形,其相互支撑的三条边分别为服务提供者、服务请求者和服务代理者,它们分别承担服务发布、服务查找和服务绑定的操作:(1)服务发布:为了被访问,必须发布服务的描述信息,以便服务消费者发现和调用。(2)服务查找:服务消费者通过查询注册中心来定位符合其需求标准的服务。(3)绑定和调用:在获得服务描述信息之后,服务消费者据此去调用服务。
服务提供者向服务代理者发布服务,服务请求者通过服务代理者查找所需的服务,并绑定到这些服务上。服务提供者和服务请求者之间可以交互,彼此之间的关系如图1所示。
图1 SOA结构简图
1.2 SOA的特点及其引入网络信息资源集成的可行性
虽然不同学者对SOA的概括存在一定差异,但其实质都是一致的。SOA的主要特点包括:
(1)松耦合性。服务之间具有中立的连接接口,而不是强制的绑定到特定的实现上,这称为服务的松耦合⑤。服务松耦合有两个明显的优点,一是它的灵活性;二是当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在,而又不改变原有的系统和结构。
(2)粗粒度的服务。也叫大数据量低频率访问,粗粒度接口保证服务请求者以一致的方式使用服务。在复杂的网络环境中,我们获取信息所进行的服务调用次数大大影响着系统的效率,SOA的粗粒度服务使大数据量信息查询或访问进行一次性信息交互,这使用户能够从一个统一的信息交互平台(服务代理者)中获得自己所需要的信息,而不必一次一次地进行多次访问和查询。
(3)面向消息的请求/响应通信方式。也叫基于文本的消息传递。在有大量异构系统存在的网络中,SOA服务用消息进行通信,该消息通常使用XML Schema来定义(也叫XSD,XML Schema Definition)消费者和提供者或消费者和服务之间的通信,多见于不知道提供者的环境中。采用SOA架构后使用基于文本方式的SOAP调用,摆脱远程调用中出现的函数参数类型等与数据无关的信息,保证所有SOAP传递的都是有意义的数据或信息。
(4)服务的可重用性和互操作性。服务的可重用性是指在保持原有系统不变的前提下对其进行重利用。这种设计不仅降低了成本,还能解决数据之间的异构等问题。为了实现可重用性,服务只工作在特定处理过程的上下文(context)中,独立于底层实现和客户需求的变更。服务的互操作是通过服务之间既定的通信协议进行的,主要有同步和异步两种通信机制,SOA提供服务的互操作特性更利于其在多个场合被重用。
网络信息资源每时每刻都在进行着更新,新系统不断产生、旧系统不断被淘汰……。在不改变原有系统的情况下如何使用新的信息呢?
SOA的松耦合性为之提供了可能性。在SOA结构中,服务提供者使用标准定义语言定义和公布它的服务接口,接口定义服务消费者和服务提供者之间的调用契约。只要服务接口保持一致,改动系统的内部结构、功能和内容对其他部分没有任何影响。SOA可以在现有的网络信息资源提供系统的基础上来发展,不需要彻底的重新创建或组织所有的网络信息资源提供系统,这种集成网络信息资源的思想具有更好的可行性。
以SOA思想将网络信息资源集成后,还可以使用户一次性获得大量的所需数据或信息,而不必繁琐地进行多次检索,基于SOA的网路信息资源集成提供了一个“一站到位”的用户界面,而后台是整体化的网络信息资源及其保障体系。
在获取信息或数据的过程中,也不会出现以往的数据不匹配、函数调用错误等问题,在SOA框架下,用户不必关心网络内部的运作过程,只需将自己的服务需求(数据需求、信息需求、应用需求等)传递给服务代理者,一切复杂的操作都在网络内部完成。
总之,将SOA思想引入网络信息资源集成中不仅具有很好的可行性,而且将会在很大程度上改进目前网络信息资源利用的状况。
2 基于SOA的网络信息资源集成设计
2.1 模型设计
以上分析了SOA的体系结构,据此可以建立网络信息资源的集成模型,如图2所示。该模型主要由网络信息资源使用者(用户)、网络信息资源提供者、网络信息资源代理和UDDI注册中心组成。
该模型的主要运作过程可以分为3个阶段:
(1)网络信息资源的集成。首先,各网络信息资源提供者,如各类数据库、网站等向各自相应的网络信息资源代理请求资源发布,网络信息资源代理响应网络信息资源提供者的请求,并针对网络信息资源封装的接口模块、封装的粒度、网络信息资源的服务时间、安全级别等进行协商。协商完成后,网络信息资源代理按照一定的规则将网络信息资源进行封装,将各类网络信息资源都封装为服务,而不是散乱无序的各类信息,至此,便完成了网络信息资源的集成过程。
(2)网络信息资源的注册。在完成网络信息资源集成的同时,网络信息资源代理和网络信息资源注册代理进行协商。然后,网络信息资源注册代理将网络信息资源提供者提供的网络信息资源存储在UDDI注册中心,UDDI注册中心定义了4种数据类型来提供服务提供者的信息:Business Entity,Business Service,Binding Template和Model。Business Entity提供关于服务提供者的信息,可以包含一个或多个Business Service。Web Service的技术和业务描述,在Business Service和Binding Template中被定义,每个Binding Template包含一对一或一对多个Model的引用,Model被用于定义服务的技术规范。UDDI通过Model和Business Service描绘抽象和实体之间的区别。这样,便可通过把WSDL内容映射到UDDI数据库中,实现网络信息资源在UDDI中的注册。
图2 基于SOA的网络信息资源集成模型
(3)网络信息资源的使用。首先,网络信息资源使用者(用户)向平台提出使用网络信息资源的请求,网络信息资源请求代理接到请求后,交由任务处理代理进行分析,任务处理代理根据用户的请求进行分析,并根据处理结构,将任务分成不同的模块,交由相应的子模块代理做进一步的处理。子模块代理到UDDI注册中心进行搜索,如果要查找的资源在UDDI注册中心,则将其返回给用户;如果不能找到,则和各局部的资源服务代理进行协商,返回相应的结果,最后通过资源组合代理将资源集成起来返回给用户。这种各专有网络信息资源代理之间相互交流和协作,共同完成一个子任务,最终达到完成整个任务的信息集成模式,使用户可以方便、快捷、全面地获得自己所需要的信息。
2.2 基于SOA的网络信息资源集成结构设计
SOA的功能模块可以分为7层,依次为已经存在的程序资源、组件层、服务层、业务流程层、表面层、企业服务总线、安全管理总线。服务层是SOA中最重要的一层,从功能角度,大致又可以分为3层:业务服务、业务功能服务和技术功能服务。企业服务总线(ESB)构建了一个集成的环境来保证以上5个层次的运行,是传统中间件技术与XML、Web服务等技术相结合的产物。安全管理总线主要为整个SOA提供一些辅助功能,它贯穿于整个SOA的层次结构中,如服务质量管理、安全管理等辅助功能,如图3所示⑥。
图3 SOA架构的分层模型
在SOA层次模型的基础上,可以建立相应的网络信息资源集成模型,它包括网络系统层、资源层、服务层、业务流程层、应用层、网络信息资源集成标准和规范层、网络信息资源集成安全管理及运行保障层等层次,如图4所示。
图4 基于SOA的网络信息资源集成层次结构
其中,网络系统层是指统一的网络基础设施,包括软件和硬件等;资源层是指网络信息资源的提供者,包括各类数据库、网站和网页等;服务层是指将网络信息资源提供者的信息资源进行整合、封装后形成的各类服务,以供上层的业务流程层调用,如学术信息资源、政府信息资源和商业信息资源等,它是整个集成模型的核心所在。业务流程层主要通过调用服务层的各种服务来完成用户相应的需求,如满足用户的信息检索或获取,使用户能够共享网络信息资源等;网络信息资源集成标准和规范层贯穿于网络信息资源集成的全过程,它是指在网络信息资源集成中应遵循的一些规范和集成的标准等;网络信息资源集成安全管理和运行保障层是保证网络信息资源集成顺利进行和满足用户信息需求的基础。
3 结论
在计算机和互联网飞速发展,人们的信息需求迅速增长的环境下,实现网络信息资源的共享和交流,解决由于以前无统一标准分别建立各自系统所引起的“信息孤岛”问题,网络信息资源集成迫在眉睫,成为当前的一个热门课题。
SOA的松耦合性、粗粒度的服务、面向消息的请求/响应通信方式、服务的重用和互操作性等特点使其在异构系统集成中具有很好的应用性。将这种新的架构理念引入到网络信息资源集成中来,将提高网络信息资源集成的效率,降低成本,解决不同平台、不同系统和不同网络之间的互操作。基于SOA的网络信息资源集成将在很大程度上提高用户的网络信息资源利用效率,减轻用户在资源利用过程中的负担。
无论从SOA的角度,还是网络信息资源集成的角度,都是今后网络信息资源研究的课题,将两者结合起来的研究更显示出其潜力。我们希望更多的学者予以关注和研究。
注释:
① 李新霞.网络信息资源的集成化与标准化.情报资料工作,2006(2)
② 沈毅.基于面向服务架构(SOA)的港口企业信息集成系统的应用研究.厦门大学,2007
③ 赵晨.基于SOA的企业应用集成架构研究.北京交通大学,2007
④ OASIS Open Reference Model for Service Oriented Architecture 1.0.http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=soa-rm,2008-11-25
⑤ 陈旺.面向服务架构(SOA).IT技术应用,2008(8)
⑥ 赵颜,黄永中.基于SOA的高校信息化进程的资源整合研究——以广西民族大学为例.中国教育信息化,2008(1)