基于Mule的数字校园数据交换系统设计与实现
作者 :  胡晨光

  摘要: 现阶段高校信息化建设的主题是集成,数据集成是集成的重要方面。ESB中间件技术是实现SOA架构的一个关键技术,开源的Mule能很好地实现SOA服务集成。在此分析数字校园的数据交换所遇到的困难,阐述了使用ESB建设数据交换平台的优势;介绍了Mule开源系统的特点、结构和服务处理流程;针对数字校园的数据交换,提出了基于Mule的数字校园数据交换和共享的体系结构;介绍了数据交换平台的系统设计和信息交换流程设计,给出了Mule的具体配置方案。
  关键字: 数字校园; 数据交换; SOA; Mule
  中图分类号: TN919?34; TP393 文献标识码: A 文章编号: 1004?373X(2013)06?0045?03
  0 引 言
  当前各高校的数字校园数据交换多采用ETL或者SOA的解决方案。ETL可以实现数据的抽取、转移、清洗、加载功能,能够实现异构数据库的数据交换,问题是一般只能在每天的深夜进行一次数据的交换,此方案满足不了学校对实时数据交换的需要,不利于数据交换的扩展,同时对数据库的直接写入操作给各数据交换的业务应用系统的稳定运行带来了安全隐患。SOA是一种构造分布式系统的方法,它将业务应用功能以松耦合的服务接口的形式提供给最终用户或其他服务,利用服务描述语言(WSDL)描述服务接口。通过服务重用的方法SOA能够大幅提高软件资源的适应性和开发效率,是解决异构系统集成的有效手段。SOA可以看作是客户/服务器模式,也就是一个“客户端”通过查询注册中心的服务信息之后,再去调用另一个“服务器”端提供的服务。那么,业务处理的路由逻辑也被加入了服务接口中,每个客户端都要定义自己的处理过程,而对于数据交换的处理过程都是类似的,这样造成了大量的重复开发,提高了成本,降低了效率。
  企业服务总线(Enterprise Service Bus,ESB)的定义为:企业服务总线是由中间件技术实现并支持面向服务的体系架构(Service Oriented Architecture,SOA)的一组基础架构功能,支持异构环境中的协议转换以及基于事件的服务、消息的交互,并且具有适当的服务级别和可管理性。ESB[1]为集成提供了高效的分布式集成环境,将SOA的服务定义与服务描述和服务调用分开,使每个节点集成接口模块化插入集成环境,保证能够保证每个节点在整个集成环境中的本地控制和自治;通过将服务和消息的集成将复杂的过程集中处理、集中路由,降低了每个节点的复杂程度,最小化节点集成接口的成本。
  所有主要的JEE供应商(IBM,Oracle)都有ESB产品,如WebSphere平台的Webspere ESB Server等。Mule是一款开源、轻量级的ESB系统软件,它不像商业软件那样只让开发者关注于集成的更高层实现,Mule让开发者能够处理集成的每个细节,面对用户独特的集成环境时更加灵活;并且Mule有很好的文档供其研究,使得对Mule有更深入的理解。
  1 Mule的技术架构
  服务架构处理流程是:
  (1)Mule通过Endpoint接收到消息之后,决定是否需要协议转换,如果需要则进行协议转换,否则流向下一步;
  (2)Inbound Router接收到消息之后,决定集成逻辑处理的组件,或者跳过这些组件,直接发送给Outbound Router;
  (3)由Outbound决定经过集成逻辑处理的消息发送的目的地址。
  2 基于Mule数字校园数据集成设计
  该模型中包含Mule,ETL,WebService三部分。Mule各业务系统之间的数据交换功能,各业务系统增加Web Service接口实现个业务系统的数据抽取、数据转换、数据加载、变化捕捉等功能;对于建设时间较长,无法增加Web Service接口的系统,部署ETL工具实现数据交换。Mule支持同步(请求/响应)和异步(发布/订阅)的消息处理机制。发布订阅机制实现预约增量数据更新的功能,保证数据源变化更新能够以增量的形式最快的发送给目的业务系统,以实现数据的即时共享。
  (1)请求者发送数据请求报文,即预约报文;
  (2)确定由处理请求消息的组件流;
  (3)存入消息队列;
  (4)从消息队列中获取消息,如果是预约增量数据,就需要反复的轮询执行;
  (5)确定目的端地址;
  (6)调用响应者的Web Service接口;
  (7)返回数据报文;
  (8)高校业务系统的建设时间不同,代码规定也不同,需要进行一对一的代码转换;
  (9)如果请求者没有Web Service接口,需要转换成它能接收的格式;
  (10)将消息推送给数据请求者。
  4 结 语
  随着高校数字校园建设的逐步推进,基于ESB的集成技术必将作为界面集成、数据集成和应用集成的主要技术手段。由于管理体制、经济成本、应用环境等因素的限制,高校数字校园集成尚处在起步阶段。本文结合工作实际,对基于Mule的数据集成进行了实践,取得了一些成果和经验。如何让ESB在集成的其他领域得到更加深入的应用,将是下一步研究的重点问题。
  参考文献
  [1] CHAPPELL D. Enterprise service bus [M]. [S.l.]: O’Reilly Publishing, 2004.
  [2] DIRKSEN Jos. Open source ESBs in action [M]. [S.l.]: Manning Publications Co., 2009.
  [3] DOSSOT David. Mule in action [M]. [S.l.]: Manning Publications Co., 2010.
  [4]周世忠.基于SOA技术的ERP系统敏捷架构研究[J].现代电子技术,2012,35(4):38?40.
  [5] 吴华.基于SOA架构的法院档案管理信息系统研究与实现[J]. 现代电子技术,2012,35(10):30?34.
  [6] 邵维东,武波.SOA安全性研究[J].电子科技,2009(11):95?97.