摘要:面向服务架构(SOA)是一种面向企业级服务的系统框架,它具有其他企业级架构所不具有的业务灵活性,把SOA松耦合、关注点分离、功能抽象的优点结合到企业组件业务架构方法中,从概念模型、层次结构、实现方式等方面对基于SOA的组件化平台框架进行设计,构建企业服务总线,并将此框架应用于云龙社区云田镇两型农村社区信息化平台建设中,验证了该框架在构建两型农村信息化平台框架时的有效性以及可行性。
关键词:面向服务架构;组件技术;农村信息化;平台架构
0引言
信息技术的发展日益加快,互联网高新技术在我国农村社区信息化的普及应用也越来越广泛,以推进“两型”农村社区信息化建设为目的,打造一体化信息化农村社区,全面提升农民信息化应用水平。在软件复杂度越来越高的今天,需要针对农村社区现状,设计出一种适用于农村社区信息化服务平台构建的信息化框架,来解决传统的分布式系统之间难以良好协作的问题。
本文提出了一种基于SOA组件化技术的农村信息平台框架,采用SOA面向服务架构,将实现项目相关的各类数据及应用之间灵活调用,以组件复用实现组件及应用的快速开发,与应用服务总线相结合,构建灵活、可扩展的支撑组件,实现了快速应用开发及系统集成的应用框架设计[1]。首先介绍了面向服务体系结构及组件技术,然后详细阐述了本文所提出的信息化框架结构。
1面向服务架构与组件技术概述
面向服务架构(SOA)是一种应用框架,它将应用业务划分为单独的业务功能和流程,即所谓的服务[2]。SOA使用户可以构建、部署和整合这些服务,以提高业务流程的灵活性,它可以有助于实现更快的开发与部署,快速响应客户需求。
SOA本身就是一种面向企业级服务的系统架构,在基于SOA架构的系统中,具体应用程序的功能是由一些松耦合并且具有统一结构定义方式的组件(service)组合构建起来的,它具有其他企业级架构所不具有的对于业务变更的快速和有效响应[3]。SOA既不是一种语言,也不是一种具体的技术,它是一种新的软件系统架构模型[4]。SOA架构具有一些典型特性,主要包括松耦合性、位置透明性以及协议无关性。松耦合性要求SOA架构中的不同服务之间应该保持一种松耦合的关系,也就是应该保持一种相对独立的关系;位置透明性要求SOA系统中的所有服务对于它们的调用者来说都是位置透明的,也就是说每个服务的调用者只需要知道他们调用的是哪一个服务,但并不需要知道所调用服务的物理位置在哪里;而协议无关性要求每一个服务都可以通过不同的协议来调用[5]。
组件模型是系统架构的一种形式,广义上说,组件就是实现一类业务功能的可重用、可独立部署和设计的程序集合,这些程序有明确和完善的接口定义,通过接口完成功能请求,而具体实现则通过封装机制加以屏蔽[6]。
采用组件模型可以通过将业务功能封装在不同的组件中,实现功能分解,降低系统的耦合程度,保证系统中各个组件能够独立进行修改和扩展[7]。在系统设计过程中,通过分析业务功能需要和系统需求,分类业务处理流程,把系统划分为若干通用组件[8]。
图2框架中数据传输与交换体系架构2基于SOA组件化的农村信息平台框架研究
21基于SOA组件化的农村信息平台框架结构
基于SOA组件化的农村信息平台模型架构如图1所示,SOA结构模型将平台接口调用开发和业务组件封装以及服务封装集成为一个开发层,通过企业服务总结(ESB)的建立减少对象间直联的接口数量,提升系统的可维护性和扩展性。
该平台主要包含5个层次:
(1)基础应用系统层:是设计平台框架时所需的应用环境以及底层的消息通信服务。
(2)企业服务总线ESB:是框架的基础部分,运行在应用服务器之上,完成各类应用服务和数据服务的整合和集成。
(3)应用组件层:用于支持软件快速开发,由公共服务组件、通用业务组件组成。公共服务组件是一系列用于用户提高开发速度和降低开发难度的组件,包括流程管理、界面管理、数据报表等内容,可扩展。通用业务组件是结合实际业务需求开发出的一系列通用的组件,如拓扑分析、行业开发包等组件。
(4)开发层:是组件封装、应用软件开发、集成开发及软件监管的集成环境,由应用开发工具及监管工具组成。
(5)交互层:是框架中对外服务的统一入口,包括应用服务以及数据服务,实现各类应用系统登录的统一认证和个性化服务等内容。
22框架中的数据传输与交换体系架构
如图2所示,该架构主要由管理层、传输层、交换层、应用层等四个层次构成。
(1)管理层:对交换中心、交换总线、交换节点的管理和监控。
(2)传输层:实现交换中心与交换中心之间、交换中心与交换节点之间、交换节点与交换节点之间的数据传输。
(3)交换层:实现各应用系统的接入和不同数据格式的转换。
(4)数据层:涵盖各个应用系统。
23框架中快速开发组件调用流程
快速开发组件调用流程如图3所示,即对公共服务组件和业务组件的调用。
(1)组件调用
根据应用需求调用不同的组件,包括公共服务组件和通用业务组件。一般过程是:调用界面组件,设计相关表单,同时在集成环境完成表单数据集成;在界面管理组件中,将印章表单关联,便于表单在流转过程中能进行电子签章;调用流程管理组件,设计流程,包括流程流向、节点、节点动作、表单绑定;在集成环境内进行流程外部表单集成调用开发,如调用外部以WebService方式提供的表单。
(2)集成开发
集成开发是在组件调用过程中对外部数据、应用集成的调用。如WebService、API等标准接口,实现服务整合。
(3)应用发布部署
将开发的应用封装为服务,注册到公共信息服务门户。通过授权设置,方便用户通过门户统一登录后在自己的权限内使用。
24框架灵活性分析
该框架采用SOA、总线技术建立灵活且易扩展的系统框架,灵活应对应用需求,同时采用组件技术,包括公共服务组件、通用业务组件,开放的模块化设计提升了系统的复用性,可以使得平台开发者更加快速地进行系统开发。框架本身采用企业服务总线(ESB)结构可以很好地屏蔽各个应用系统之间由于开发环境和开发语言不同所带来的兼容性问题,并且服务提供者和服务请求者也不必跟其他提供者和请求者建立连接。对于开发人员而言,SOA提供的松耦合使得在业务需求不断变更的同时不必大幅度修改维护系统,从而降低了开发成本以及周期。图3快速开发组件调用流程3初步应用实践
将本文提出的基于SOA组件化的农村信息平台框架应用于株洲云龙示范区云田镇两型农村社区信息化管理平台的设计构建中,如图4所示。云龙社区云田镇农村社区信息化管理平台框架结构分为5个层,其中开发层可细化为三个步骤,如图5所示。将底层的应用以组件的形式封装起来,通过统一的接口提供上层服务,上层是服务封装层,通过使用这些组件,将其进一步封装成服务,通过WSDL描述的服务按照一定的顺序组合起来形成不同的业务流程,同时服务提供者可以直接根据需求动态地改变相应的业务流程,通过提供的内部接口来实现。
本文通过对面向服务架构的研究提出了基于SOA组件化的农村信息平台框架模型,以及框架中所需数据传输交换体系架构和快速开发组件调用流程架构的设计,很好地实现了框架中各个部分的资源整合。作为试验性应用,将该框架应用于云龙社区云田镇两型农村社区信息平台框架设计构建中,可以有效地屏蔽各个部分技术不匹配等诸多问题,提高了系统的重用性,企业服务总线将应用组件构建封装成不同粒度的服务,并对服务进行注册和修改,实现了企业对服务的及时变更,SOA组件化架构的松耦合特性可以有效降低服务之间的依赖性,降低了开发的复杂度以及维护的成本,有效促进了两型农村社区信息化的发展。
参考文献
[1] 冯玖,白尚旺,党伟超. 基于SOA的物流信息系统架构研究[J]. 计算机与数字工程,2009,37(1):192-195.
[2] 俞晓锋. 基于SOA的企业信息系统集成架构研究[D].长春:吉林大学,2014.
[3] 杨帆. 基于SOA数据交换方法与技术的研究[D].西安:西安电子科技大学,2014.
[4] 郭会杰. 基于SOA的企业门户集成系统的设计与实现[D].北京:中国科学院大学,2014.
[5] MACLENNAN E, BELLE J P. Factors affecting the organizational adoption of serviceoriented architecture(SOA)[J]. Information Systems and eBusiness Management, 2014, 12(1):71-100.
[6] 张昀. 基于SOA架构的分布式ESB总线的研究与实现[D].南京:南京理工大学,2009.
[7] 刘涛,侯秀萍. 基于ESB的SOA架构的企业应用研究[J]. 计算机技术与发展,2010,20(5):230-233.
[8] 张恒,梁晓娅.移动Web位置服务的框架研究[J].微型机与应用,2013,32(19):14-16.