李文翔+林丹楠
摘 要:智慧校园要求建立一个统一的数据共享平台和综合信息服务平台,除了对已存在且分散在各处的数字化校园相关业务系统进行整合,还要支持基于物联网应用技术智能化管理系统的应用。由于这些异构系统的业务各自独立、应用环境不尽相同。为此利用ESB技术将这些异构系统以服务的形式整合到一个统一的架构中,从而解决异构系统协调运作问题,实现系统之间资源的整合。文中首先给出一个基于Apache Synapse ESB的智慧校园综合业务平台架构,然后基于此架构给出该平台的UML部署图,为智慧校园综合业务平台的建设提供思路。
关键词:ESB技术;企业服务总线;面向服务体系结构;智慧校园综合业务平台
中图分类号:TP399 文献标识码:A 文章编号:2095-1302(2018)02-00-03
0 引 言
智慧校园[1]是指以物联网为基础的智慧化校园工作、学习和生活一体化的环境,这种一体化环境以各种应用服务系统为载体,将教学、科研、管理和校园生活进行充分融合。目前,国内外在智慧校园平台的架构设计与开发方面做了相关研究:文献[2]提出利用云计算、虚拟化及SOA构建校园云,结合物联网、RFID构建智慧校园,实现资源动态分配,提高资源利用率;文献[3]提出一种面向私有云的IaaS架构的智慧校园信息化支撑平台,为云计算在智慧校园平台的建设应用提供了基础;文献[4]提出基于SOA的实时服务总线,用于构建分布式实时系统;文献[5]在分析远程教育平台缺陷的基础上提出了基于SOA的智能远程教育平台的概念,并给出了平台架构和模型的实现方式;文献[6]提出一种基于企业服务总线(ESB)的共享平台架构模型,并以“贵阳市城市综合应急管理共享平台”为例探讨了该共享平台的实现方案,这为利用ESB技术实现智慧校园平台架构设计提供了理论依据;文献[7]在调研各个行业常用物联网业务系统的基础上,梳理出各类系统的共性功能,把各系统的共性功能看作服务,提出一种基于企业服务总线的物联网综合业务平台架构;文献[8]在综合分析了Web Services,SOA和ESB三者之间联系的基础上给出一种基于Apache Synapse ESB平台的应用集成规则。这些研究对物联网技术和SOA应用在智慧校园平台建设方面具有一定的借鉴意义,也为利用ESB技术构建与实现智慧校园综合业务平台提供了一定的技术基础。
1 ESB简介
企业服务总线(Enterprise Service Bus,ESB)是传统中间件技术与XML、Web服务等技术结合的产物,是 SOA 的一种实现方式[9]。ESB主要提供了协议转换、消息传递、消息转换和服务路由等功能。在众多ESB实现工具中,Apache Synapse是一个轻量级高性能的企业服务总线,通过一个快速的异步规则引擎,能分别提供XML,Web Services和REST的支持。除XML和SOAP外, Apache Synapse还支持其他中间内容格式,如纯文本、二进制、JSON等,通过大量的适配器可以支持诸如HTTP(S),POP3/IMAP/SMTP邮件协议,TCP,UDP等传输协议,以支持与其他系统的通信[10]。
2 基于Apache Synapse ESB的智慧校园综合业务平台的架构设计
2.1 平台的总体架构
本文提出的基于ESB的智慧校园综合业务平台,不仅要解决智慧校园综合业务平台建设过程中存在的“信息孤岛”问题,实现异构系统之间的集成与通信,还要侧重满足基于物联网应用技术智慧校园的智能化管理功能。为此,结合Apache Synapse的特点,本文给出一种基于Apache Synapse ESB的智慧校园综合业务平台的架构设计方案,如图1所示。利用ESB技术实现平台架构的最大特点在于组件服务化和业务编排,在平台架构中,还引入了服务组件框架 (Service Component Architecture,SCA)编程规范机制来实现业务组件的服务化处理以及利用业务过程管理(Business Process Management,BPM)实现业务服务的彼此串接。
平台采用3层架构设计,即基础设施层、服务管理层和应用层。在服务管理层引入Apache Synapse ESB企业服务总线,主要负责向SCA组件模型传入基于JMS传输协议的SOAP消息以及接收BPM流程管理传入的基于JMS传输协议的SOAP消息。同时服务管理层还以服务适配器的形式封装基础设施层提供的基础功能,而后通过SCA框架规范化这些服务适配器为基于SOAP的Web服务。这些基于SOAP的Web服务又供BPM消费使用。在应用层则通过HTTP传输协议向ESB传入SOAP消息,而此时Apache Synapse ESB不仅要实现HTTP协议与JMS协议的转换,还要根据消息的内容使用路由规则调用相应的服务。
2.2 平台功能
平台各层次的主要功能描述如下:
(1)应用层主要分为应用表示层和业务逻辑层。应用表示层包含了智慧校园领域的各项功能应用,并提供了一个良好的人机交互平台,通过人工操作触发驱动业务逻辑层接口,实现对底层服务的调用。业务逻辑层起着承上启下的作用,除了要向上层提供良好、灵活的业务逻辑接口以供调用,还要向下发送基于HTTP传输协议的SOAP消息给Apache Synapse ESB总线,实现对服务的调用。
(2)服务管理层大致可以分为Apache Synapse ESB总线、SCA组件层、BPM业务流程管理和服務适配器层四个部分。
Apache Synapse ESB总线是服务管理层的核心部分,主要利用Apache Synapse ESB所提供的功能实现消息的传递和转换、协议的适配等,实现异构系统之间基础业务协同能力以及数据交换和共享能力。endprint
SCA组件层将服务适配器层提供的各种形式的服务适配器通过SCA框架定义和创建基于SOAP的Web服务,以供BPM业务流程管理使用。
BPM业务流程管理利用SCA组件层提供的服务组装创建可建模、可执行的业务流程,并将其服务化为SCA组件,供Apache Synapse ESB使用。
服务适配器层主要设计开发不同语言环境下的服务适配器接口,向下实现调用平台底层的基础业务功能,向上提供一个可调用的良好接口。
(3)基础设施层。可以将其划分为基于物联网技术的智能化管理系统、数据库系统、历史遗留的业务系统和可扩展接口四个部分。
基于物联网技术的智能化管理系统主要利用物联网技术将该部分分割为感知层和传输层。感知层主要负责将物联网中各个感知节点的信息接入平台;传输层具有多种类型的通信接口,便于感知层感知节点的信息接入以及传递服务管理层向感知层发送的命令。
数据库系统提供有数据库管理系统,便于各种业务数据的保存和读取。
历史遗留的业务系统保留着现有的业务系统,以便通过扩展现有的业务系统接口提供基础业务功能。可扩展的接口主要包含平台的可扩展业务,如邮件服务等。
2.3 平台的UML部署图设计
基于Apache Synapse ESB的智慧校园综合业务平台的UML部署如图2所示。在该部署图中,主要有2个服务器,即SCA服务器和ESB服务器。SCA服务器主要负责将各业务功能和BPM服务化;ESB服务器则负责将服务化后的SCA组件进行部署,以供客户端使用。其他各個业务系统以结点的形式通过通信协议连接到SCA服务器,从而实现业务功能的服务化。
3 结 语
本文提出了一个基于Apache Synapse ESB的智慧校园综合业务平台架构,构建了一个高效的、易扩展的、趋于完善的平台,使其可以支持智慧校园领域的更多应用,并对架构中的各层功能、平台硬件和软件的部署情况进行了阐述,为智慧校园综合业务平台的构建与研究奠定了一定的基础。目前,该平台还处于分析与研究阶段,仍有一些功能未能完善,如平台如何处理文件传输和实现存储功能,以及如何使用Apache Synapse实现本文所提及的ESB架构,这些都是后期将要继续研究的主要问题。
参考文献
[1]胡钦太,郑凯,林南晖.教育信息化的发展转型:从“数字校园”到“智慧校园”[J].中国电化教育,2014(1):35-39.
[2]吕倩.基于云计算及物联网构建智慧校园[J].计算机科学,2011,38(B10):18-21,40.
[3]吴细花.“智慧校园”云平台的关键模块设计与实现[D].长沙:湖南大学,2014.
[4] Lixin Du,Chunsun Duan,Shijun Liu,et al.Research on Service Bus for Distributed Real-time Control Systems[A]. Proceedings of 2011 6th IEEE Joint International Information Technology and Artificial Intelligence Conference(ITAIC 2011) [C]. Chongqing,China,2011.
[5] Xiao-yan AI.Design of Intelligent Distance Education Platform Based on SOA[A]. Proceedings of 2012 International Conference on Information and Computer Applications[C].Hong Kong,China,2012.
[6]薛蕾,蒋朝惠.基于ESB的智慧城市共享平台设计与实现[J].计算机技术与发展,2013,23(3):218-222.
[7]邸剑,肖军,王春新,等.基于ESB的物联网综合业务平台设计[J].计算机应用,2013,33(A2):6-9.
[8] Jiang Ma,Haicun Yu,Jianbo Guo. Research and Implement on Application Integration Based on the Apache Synapse ESB platform[A]. American Applied Sciences Research Institute, AASRI.Proceedings of 2012 AASRI Conference on Computational Intelligence and Bioinformatics (CIB 2012 V1)[C].American Applied Sciences Research Institute, AASRI,2012.
[9]邓锦福.基于SCA的ESB的研究与实现[D].广州:华南理工大学,2010.
[10]施晶晶.基于ESB的学生工作管理系统设计与实现[D].上海:复旦大学,2011.endprint