欢迎光临鸿运手机版登陆,权威的论文发表,我们将竭诚为您服务!
您的位置: 鸿运手机版登陆 -> 高等教育论文 -> 文章内容

基于SOA实现高校应用子系统集成研究

作者:鸿运手机版登陆 更新时间:2015年10月26日 21:04:51

摘 要:本文讨论了基于SOA并以Web服务为技术基础在高校信息系统集成中的应用,详细介绍了构建不同粒度的面向服务的体系架构,及该方案怎样以最低的代价和最快的速度适应学校业务逻辑的改变。

关键词:SOA;Web服务;应用集成;教学资源

  一、引言
  近年来,信息技术应用的卓越成效在经过几十年的信息化建设进程中已初步显现,教育行业中的高校也见证了这一发展历程。学校内往往是一些需求最迫切的部门率先采用信息技术,但受当时的技术、资金、时间等因素的限制,只实现了某些部门的业务功能且各个系统相互独立。但随着时间的推移,学校已逐步建成了较为完整的业务系统。当前面临的紧迫问题是如何使这些互不兼容的“烟囱式”的业务系统集成起来,如何对各个业务系统中的数据进行综合利用,且随着学校与外部环境之间的交流增多,如何协同办公及提高系统应对业务需求变化的能力。要解决这些问题,只能从全局的角度考虑学校的信息化需求,并根据实际情况,对各个信息系统进行综合分析,选择一个经济、高效的集成平台,将学校各部门的 “烟囱式”的信息系统集成起来。
  二、SOA架构的应用集成
  (一)面向服务的应用集成
  SOA的开发模式提供的开发机制可用于服务描述、服务发现、服务之间的通信。服务可定义为功能,也可定义为某一对象或应用,这样的特点使基于SOA的集成具有较好的普适性,使系统集成时不受某些特殊规则的约束,还可将系统和应用迅速转换为服务。用服务粒度来控制、定义通信中的数据量,服务可分为细粒度服务、粗粒度服务或组合服务[1]。这里用服务粒度来表达服务的实现、及在服务使用中涉及到的数据量或消息量。最小的功能由细粒度服务封装,通信中使用少量的数据。较大的业务功能由粗粒度服务封装,处理较多的数据。细粒度服务是最小的服务,供粗粒度服务或组合服务调用,不提供给终端应用。如果用细粒度服务来建立终端应用,系统中调用的服务就会增多,而每个服务上的通信数据量就会减少,导致系统性能受到影响。虽然粗粒度服务可调用若干个细粒度服务,但粒度级的安全及访问控制无法得到保障,因此细粒服务在安全控制方面更容易实现。粗粒度服务和细粒度服务可进行拼装而形成组合服务,灵活地实现系统的不同需求。只要对三种粒度服务的综合运用,设计出一组有效的不同粒度的服务组合就会产生新的业务流程或功能,这就是面向服务的集成。
  (二)Web Service模型
  Web服务的出现使SOA的实现成为可能,在Web服务模型中共有三种工作角色[2],其中服务提供者(服务器)和服务请求者(客户端)是必须的,服务注册中心是一个可选的角色,它们之间的交互和操作构成了SOA的体系结构。主要角色有:1)服务提供者。它是服务的所有者。实现服务,使用服务语言对Web服务进行详细、准确、规范的描述并将服务注册到服务注册中心。2)服务请求者。查找、绑定和调用服务,或与服务进行交互的应用程序。3)服务注册中心。是服务提供者与服务请求者相互联系的纽带,服务提供者在此发布他们的服务描述,而服务请求者在此查找他们所需的Web服务;Web服务模型中主要操作有:1)发布:只有发布服务的描述信息,服务请求者才能发现和调用服务。2)查找:服务请求者通过查找注册库来定位符合其需求的服务。3)绑定和调用:服务请求者使用服务。
  三、基于SOA 的高校应用子系统集成
  (一)传统集成模式的不足及SOA集成的特点
  传统的系统集成如EAI是基于组件模型的技术[3]。为了实现完全的应用集成,必须选择一个统一的集成标准,常见的集成标准包括:CORBA、EJB、DCOM等,这些标准的集成性较好,但也存在着一些问题。系统扩展性不强,模块强耦合的调用增加了系统维护负担;实施过程中,不仅在业务逻辑上要进行功能的集成,还需要对多种信息源产生的数据进行综合的分析和决策及数据转换,使EAI的实施代价大、周期长;没有统一的工业标准,易造成对某一集成技术提供商的过份依赖。这些因素很大程度上限制了系统集成的实施。
  SOA是实现学校信息系统中的数据和业务无缝衔接的理想方案,它之所以被用于子系统集成,是因为其具备了标准化、可组装的特性[4]。因此用SOA 整合教学资源的关键是把原有的信息资源封装为服务,还可将新开发的服务和原有系统经包装后的服务进行不同粒度的组合,以实现对教学资源的整合。与传统的集成模式相比,SOA 具有如下特点:1)具有标准化的应用接口;2)模块之间以粗粒度、松耦合的形式组合;3)建设周期短,成本低;4) 能适应业务逻辑变化。
  (二)基于SOA的应用子系统集成架构
  SOA提供了标准化的架构,在现有系统不做修改的前提下,将各个业务功能转换或封装为服务,这些服务彼此相对独立且可进行组合,从而有效地实现子系统集成。集成系统框架如图1 所示。
  

  图1 基于SOA架构的学校应用子系统集成系统框架
  从图1可知学校信息系统集成框架中的集成开发体系结构可分为应用层、接口层和功能层。应用层由服务使用层、业务流程层构成;接口层由服务汇聚层和不同粒度的服务层构成;功能层由服务提供层中的应用系统功能部件组成。
  在服务使用层,服务使用者是基于ASP.NET开发的存在于学校信息门户的Web应用,使用者对服务的访问集成到统一的界面上,用这种表示逻辑来访问被封装的服务,用户的每个操作都可映射到相应的服务中去;业务流程层包含了各种业务规则和业务流程控制;服务汇聚层将细粒度服务组合为粗粒度服务并为服务使用者提供服务描述、UDDI目录、动、静态(代码阶段)绑定到所需要的服务。服务汇聚层象一个网络中的信息交换中枢,它提供了UDDI路由、数据转换、协议转换和安全所需的访问控制等功能。它的核心基础设施服务注册中心,是服务提供者、服务使用者之间的一座桥梁,发布服务、查询服务、调用服务都在这里进行,在静态绑定代码阶段或动态绑定执行期间,服务使用者查找服务并获得服务的绑定信息。服务汇聚层作为通用接口的一部分,使服务提供者和使用者之间的耦合关系减弱,提高了系统的可重用性以及现有服务的内部扩展和外部获取,也增强了系统的灵活性;服务提供层,学校内部服务提供者包含了新开发的功能,它们均被封装为标准的Web服务,成为系统中一个新的集成点。服务提供层还封装了原有子系统的部份功能,这是系统中最重要的集成对象或应用,同样以Web服务的形式封装并发布,例如将学籍管理系统对学生信息的查询、人事管理系统中对教师信息的查询等功能等设计为Web服务并公布出来。将这些服务发布到UDDI公共目录服务器中注册,以便为服务的使用提供必要的接口描述信息。在此系统集成框架下,学校各个子系统的部分功能既充当了服务提供者的角色,又充当了服务使用者的角色。本信息系统集成的具体应用中,教务系统一方面为其它信息系统提供成绩查询等服务,同时也是学生信息查询、教师信息查询等服务的使用者。应用集成的一个重要目的就是整合信息资源,将那些需要共享的业务功能和数据以服务的形式向外提供。
  3.4 适应业务逻辑的改变
  当业务逻辑发生变化时,可对相应的服务进行增删、组合,这对服务的使用者来说是完全透明的,因为服务调用接口并没有变化,因此服务调用者的代码不需要更改。如在建设培训业务流程中,省建设培训中心开设新的培训项目,培训系统只处理新招收的学员,当课程结束后需考试时,上报给省培训中心的学员信息仅局限于新生信息。当允许往届的不合格学员也可参加考试时,培训系统就可对服务的业务逻辑做适当的修改,作为服务使用者的省培训中心的系统来说,不需要做任何处理。在此过程中,服务端只需少许的代码修改就可实现新的功能,这种松藕合的基于面向服务的信息集成真正做到了“按需而动”的效果,提高了系统集成的效率。
  四、结束语
  传统的应用集成己不能适应学校各系统的业务需求变化,用Web服务技术实现基于SOA 的面向服务集成构架,具有平台无关性、松藕合的特征,具体实施时代价较低,使教学资源通过Web服务进行数据共享、互连、互通及协同,它为子系统服务的定义、发布和访问提供了切实可行的解决方案,在学校信息系统的集成中将有广泛的应用前景。
参考文献:
[1] [美]Eric Newcomer,Greg Lomow 译者:徐涵.Understanding SOA with Web Services 中文版.电子工业出版社.2006.
[2] Web服务技术:Joe Clabby.Web Services Explained.Prentice Hall. 2002.
[3] 程刚.企业应用集成(EAI):消除企业信息孤岛.中国电子音像出版社.2003.
[4] 郭晋伟.SOA架构的管理信息系统设计与实现[D].沈阳:中国科学院沈阳计算技术研究所,2006年.