美章网 资料文库 基于SOA的社区管理论文范文

基于SOA的社区管理论文范文

本站小编为你精心准备了基于SOA的社区管理论文参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

基于SOA的社区管理论文

1基于soa社区管理系统的技术架构设计

社区信息管理系统平台可以采用SOA架构来构建整个应用程序运行框架.在传统的业务系统中,组件往往还是建立程序级别的复用上,而采用SOA结构之后,系统可以实现组件级别的重用,这就保证了业务需求的变更能够实时地通过服务的重新组合实现,而不需要进行大量的程序开发[4].平台架构如图1所示:

1.1用户层用户层是指社区主要用户,包括社区领导、各科室办公人员、社区企业用户和社区公众用户等社区管理系统用户访问业务系统、获取服务及信息的主要途径.

1.2表示层表示层是系统的门户,它提供应用接口,使业务流程和服务以开放的形式暴露给用户,根据用户提供的参数返回所需的信息结果,并为用户提供统一的用户交互服务.表示层提供业务的统一入口,负责响应用户层发来的业务请求,进行身份验证、数据验证之后,将请求转发给业务层,由相应的业务处理过程进行处理,最后将业务逻辑层返回的处理结果通过表示层返回给用户.

1.3业务层业务服务层封装了社区管理信息系统的核心业务处理逻辑,按照业务内容可以划分为居民管理、民政业务管理、经济管理、劳动保障管理等13个部分[1].业务服务层采用SOA的技术架构,处理来自表示层的服务请求,执行特定的业务逻辑,并调用公共服务层的安全控制、数据存取、权限控制、数据访问等服务,并将处理的结果返回给用户界面.业务层与公共服务层之间通过ESB进行数据交换和整合.

1.4公共服务层公共服务层是整个系统中最重要的一部分,这部分包括了大量的不同颗粒,不同用途的服务,以供业务层相关应用调用,所以又把公共服务层分为四个子层,分别是服务层、业务组件层、数据持久层和基础服务.企业服务总线ESB作为各种服务之间调用和信息传递的中介,起到了上传下达,信息沟通的桥梁作用.服务层包含业务相关的服务,为充分实现系统的灵活配置和扩充维护,提高系统的应用复用和性能效率,本系统将以平台为基础,为核心主体应用、各地本地化应用及今后各类拓展应用提供公共、统一、通用的核心基础服务,通过服务层来提高公用的业务接口和灵活的业务配置服务.业务组件层通过各种业务类对建模的数据结构进行封装,实现基本的业务逻辑处理、数据访问等操作,形成基本构件.业务组件层通过将业务构件进行集成,从而形成不同粒度的服务.数据持久层用来完成系统中数据的访问和管理,屏蔽数据访问的细节,通过数据持久化技术实现和各种数据库的透明化连接[3].基础服务层提供与具体业务无关的公用的基础性服务,作为公共服务层的基础支撑环境.企业服务总线ESB(EnterpriseServiceBus)是SOA架构的一个支柱技术,它作为一种消息架构提供了消息队列系统,使用诸如SOAP或JMS(JavaMessageService)等标准技术来实现[3].ESB在SOA的体系结构中起着服务注册中心的角色,它将SOA的所有参与者连接在一起,提供连接性、技术异质性、通信异质性和技术服务等功能,并管理和监控应用程序之间的交互[3].

1.5数据服务层数据服务层为上层应用及服务提供统一的数据支撑,社区管理信息系统是一个复杂的系统,涉及多种不同的数据源,比如社区信息、居民信息、计划生育信息、公安系统信息、民政系统信息等,数据服务层首先会通过数据采集及支撑平台,根据信息标准规范,将各种数据采集转换,形成统一交换和共享数据库.

2基于SOA的社区管理系统的关键技术

2.1WebService以及相关技术体系SOA作为一个技术架构决定了不应依赖于某个特定的技术和平台环境来实现,目前WebService是最适合、最广泛实现SOA的技术.WebService是一种崭新的分布式计算模式,是Web上数据和信息集成的有效机制,它定义了应用程序如何在Web上实现互操作性[6,8].

2.2轻量级JavaEE软件架构-S2SH轻量级JavaEE软件架构S2SH主要由主流的开源框架Struts2、Spring、Hibernate根据其各自的应用特性而进行整合而成,选择以Spring框架为核心并整合Struts2和Hibernate的框架组合[5].Struts2框架是在struts1的基础上,并结合了WebWork的技术而开发全新的基于MVC模式的Web框架,负责实现表现层.Spring框架是为了解决企业应用程序开发复杂性而创建的,它提供了一种轻量级的企业业务解决方案,该框架以控制反转(IOC=InverseOfControl)作为设计思想,应用AOP(面向方面的编程)理念进行程序的设计,可以快速设计并装配企业组件,负责实现业务层.Hibernate框架是一个O/R框架,可以通过配置文件在域对象和数据库表之间建立起一个映射关系,简化了与数据库的交互过程,用于数据的持久化.通过三种框架优化组合,可以使系统具有良好的层次,达到系统的可扩展性和可维护性,并有利于项目组成员的明确分工,提高开发效率,缩短开发周期.

3基于SOA的社区管理系统的实现

3.1基于S2SH框架的SOA架构设计在S2SH框架中,通常采用Spring来实现业务逻辑层,而在SOA系统中业务是基于服务的,所以采用把公共服务层的组件包装成WebService的方式,使用WebService作为SOA的服务提供者,Spring提供所有JavaBean的调用关系管理,实现依赖注入和AOP功能,同时使用企业服务总线(ESB)技术来实现SOA中的服务中介,并且在S2SH体系的业务层之下添加了一个服务层,用来封装对服务的具体调用代码.采用ESB作为业务层与服务层进行信息交换的中介,更好的实现系统的集成[7,9].基于S2SH框架的SOA架构如图2所示.表示层:用户通过浏览器来访问Web页面.Struts2负责页面层和内部业务的结合,以及页面之间的切换。可以使用JSP/Html生成Web页面,也可以使用JQuery等JS框架实现表示层.业务层:提供业务核心处理逻辑的实现,业务的实现还需要调用服务层提供的服务.服务层:为业务层访问服务层提供请求服务,服务层从ESB获得服务的WSDL描述文件,并根据该文件实现对服务的访问,从而简化了业务层与服务层的交互过程.ESB企业服务总线:业务层和服务层之间的中介,实现对服务的注册,信息的交换转换等.服务层:使用WebService技术实现服务的提供者,为业务层的核心处理逻辑提供服务,通常是比较粗粒度的业务构件.业务组件层:负责实现业务逻辑的JavaEE组件.由JavaBean完成业务构件的开发.数据持久层:完成业务实体和关系表之间的映射关系,实现对数据库的透明化访问.数据库层:关系型数据库,存储企业数据.

3.2基于S2SH框架的SOA架构工作流程社区管理信息系统中表示层使用Struts2框架实现,包含Struts2框架下的Struts控制器、XXAction类;业务层使用Spring框架进行管理,包含实现具体业务的XXBusiness接口和XXBusinessImpl实现类;服务层实现与ESB交互来查找服务,业务组件层包含各种业务组件类及其接口,持久化层用Hibernate实现实体对象到数据库的映射.在开发过程中,首先把某模块的功能封装成Web服务XXService,并生成xxService.wsdl文件,对其进行描述,并将其在ESB上和注册,业务层通过服务层在ESB中查找需要的服务,对Web服务进行调用,返回需要的信息.社区管理信息系统架构工作流程如图3所示.

4结语

基于S2SH框架的SOA架构开发的社区管理信息系统,系统的功能分层结构清晰,开发简便;系统实现服务透明化,SOA架构中使用了ESB,服务对客户端来说是完全透明的;系统采用了S2SH框架,系统分层结构更加合理,有利于系统的维护和扩展.总之,系统具有柔性化、透明化、可扩展性,可以根据环境变化非常容易对系统进行扩展,快速实现社区管理的需求变化.

作者:武建军李昌兵单位:重庆邮电大学经济管理学院