李 东,吴龙涛
(装甲兵工程学院 信息工程系,北京 100072)
装备器材保障担负着为装备恢复战斗能力创造条件的重任,在信息化条件下的一体化联合作战中具有重要地位和作用[1]。目前,各级装备器材管理部门基本建成了独立运行的、覆盖单项业务的管理信息系统,用于装备保障业务的管理,提高了管理水平和工作效率,但无法实现战略级装备器材保障信息资源的集成和共享。特别是随着装备器材种类越来越多,业务需求日益复杂,原有手段难以灵活、快速地响应需求变更;现有信息系统没有统一的体系结构、数据和技术标准,难以实现信息综合和共享,彼此形成了的“信息孤岛”[2]。
近几年,面向服务的体系结构(SOA)以其松耦合、粗粒度、平台无关性、业务敏捷性等特点成为软件体系结构新的发展阶段[3]。在传统软件体系结构无法满足装备器材保障信息化需求的情况下,基于SOA 开发战略级装备器材保障信息系统可以快速灵活地应对业务变化,并在维持现有系统的前提下破除“信息孤岛”,实现资源共享。
面向服务的体系结构(SOA)[4]是一个组件模型,它将应用程序的不同组件单元(称为服务)通过这些服务之间定义良好的借口和契约联系起来。接口是采用中立的方式进行定义,它独立于实现服务的硬件平台、操作系统和编程语言。
SOA 通过网络对松耦合、粗粒度服务进行分布式部署,所有服务的具体实现、位置和传输协议对调用者来说都是透明的,服务调用者根据不同业务需求进行重组和使用。通过业务驱动服务,服务驱动技术,SOA 让系统变得更有弹性。
Web 服务是建立可互操作的分布式应用程序的新平台。作为重要的SOA 实现技术,Web 服务(Web Services)已得到广泛应用。Web 服务通过URL 识别,并通过XML 语言进行定义、描述和发现,具有完好的封装性、松耦合性和高度的可集成能力[5]。
Web 服务具有良好的封装性、松耦合、为实现服务互操作性,Web 服务平台提供了一套标准的协议,用于沟通不同的平台、编程语言和组件模型中的不同的类型系统。参考W3C 提议的Web Services 互操作性叠层,将Web Services 的各种典型操作和技术标准构成一个技术间相互依赖的协议栈,如图1 所示,上层功能必须依靠下层的支持。
图1 Web 服务协议栈
企业服务总线(ESB)[6]提供了一种实现SOA 的基础架构模式。ESB 是传统中间件技术与XML,Web 服务等技术结合的产物,它提供了一种在松耦合的服务和应用之间标准的集成方式,实现异构环境中的服务、消息以及基于事件的交互。
ESB 在SOA 中负责帮助服务的集成,而不参与业务逻辑,它的功能:在服务与服务之间路由消息;在请求者与服务者之间转换传输协议;在请求者与服务者之间转换消息格式;处理来自于各种异构源的业务事件;保证服务质量(安全、可靠和交互处理)。
如果没有ESB,服务的请求者和服务的提供者之间必须要通过接口建立显式的点到点的调用,这在拥有大量服务和复杂业务的大型系统中是不堪设想的。使用ESB 作为大型系统中整合应用和服务的一个灵活的基础架构,可以大大减少接口的数量,降低系统复杂度,实现服务位置的透明化,提高系统的可扩展性,使得SOA 更为强大。图2 为引入ESB前后服务调用的对比示意图。
根据装备器材保障信息化建设的要求,结合我军装备器材保障体制特点和业务管理关系,装备器材保障信息化网络平台采用开放互联的多层网络拓扑结构,依托军网搭建战略、战役、战术三级网络平台,实现总部机关、军区机关、各部队单位以及各级仓库之间的互联互通[7]。
图2 ESB 对SOA 的改进
基于SOA 的战略装备器材保障信息系统的总体功能是依托三级网络平台[8],在异构环境下,建立分布式数据库,形成一个共享数据环境,实现总部机关、军区机关、各级部队、仓库之间的双向信息沟通,将器材筹措、储存、供应、战时保障等环节连成一个闭环信息流,实现全军装备器材信息的全系统、全过程、全方位的管理,并为各级部门提供信息管理和服务,以及辅助决策支持的功能。系统的总体功能见图3。
图3 系统功能示意图
根据面向业务不同,基于SOA 的战略装备器材保障信息系统可以细化为器材网络管理、器材资源管理、决策支持等子系统[9];根据面向用户不同,系统又可划分为战略、战役、战术等三级信息系统。如图4 所示,系统充分考虑装备器材保障的特点和系统的灵活性、兼容性、可移植性及可扩展性,对于各级信息系统,利用组件化软件开发模式,设计经费管理、订货合同、器材分配等若干粗粒度的服务组件,并发布到ESB 中。不同业务部门根据业务管理内容和特点,通过网络平台,从ESB 中选择相应的服务组件进行组装,从而满足不同的业务管理需要。
图4 基于SOA 的装备器材保障信息系统架构
为了更好地实现各级信息系统之间的服务共享和服务权限控制,采用联合ESB 是一个很好的解决方案:不同部队单位、军区机关在各自网络拓扑结构内使用单独的ESB,通过军网实现ESB 的互联。上级单位的ESB 与下级单位的ESB 是主-从关系,主ESB 控制参与者可以访问哪些内容。图5 为联合ESB 部署模式。
图5 联合ESB 在系统中的部署模式
J2EE 是一种来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构[10]。J2EE 为搭建具有可伸缩性、灵活性、易维护型的商务系统提供了良好的机制。结合J2EE 技术,可以实现基于SOA 的战略装备器材保障信息系统架构,如图6。由于J2EE 技术当前应用广泛,这个架构应该具有典型意义的,而且它也是严格遵循了SOA 特性。
图6 基于J2EE 实现的系统架构
J2EE 体系中,通常采用EJB 组件或Spring 来实现业务逻辑层,而在SOA 系统中业务是基于服务的,于是采用把业务逻辑层的组件包装成Web Service 的方式,使用Web Service 作为SOA 的服务提供者,由无状态会话bean 生成,通常是粗粒度的,对应企业的业务逻辑。同时,使用企业服务总线(ESB)技术来实现SOA 中的服务中介,服务请求不用直接发送到服务提供者,而是先送到服务总线,由服务总线将请求消息转发给服务提供者,得到返回消息后,服务总线再转发给服务请求者。并且,在J2EE 体系的控制层之下添加了一个服务调用层,用来封装对服务的具体调用代码,编写服务调用代码时需要从服务总线获得服务的WSDL 描述文件,然后根据此文件进行编写。
目前,已有不同的厂商推出了自己的ESB 产品,但是这些产品的体系结构各异,所具有的功能和实现的程度也不尽相同,所以在进行大型复杂系统的SOA 应用构建时,就要选择一个适合的产品。BEA 发布的Aqua Logic Service Bus(ALSB)可以运行在Windows,Linux 和Solaris 等不同操作系统上。ALSB 是完全的现代ESB,它提供了智能的消息代理、动态传送和转换,所有这些都支持与服务生命周期管理功能(包括服务注册、监控和定义阈值的服务水平协议(Server Level Agreement,SLA)实施)集成的异构服务端点。
基于SOA 的战略装备器材保障信息系统,依托部队三级网络体系,采用联合ESB 部署模式,能够有效解决当前装备器材保障信息化中存在的诸多问题。相比当前部队大多信息系统,该系统具有以下特色[12]:
1)连通“信息孤岛”,实现异构系统之间的互操作。SOA 架构中,使用不同操作系统、数据库、技术平台的系统借助ESB 可以互相访问,总部可以无障碍的获取各军区、各部队的器材保障信息;
2)灵活、快速地响应业务需求变更。SOA 从现有的服务中组合新的服务的能力为灵活、快速地响应器材保障业务的需求变更提供了独特的优势;
3)充分利用现有的资产。通过将现有的IT 资产按照Web 服务协议标准包装为服务,各部门可以继续使用已有系统,而不必推倒重建;
4)增加重用,减少成本。通过以松耦合的方式公开业务服务,各业务子系统可以根据业务要求更轻松地使用和组合服务。这意味着资源副本的减少、重用可能性增加。
5)支持服务的“即插即用”,系统扩展易于实现。因为服务之间的松耦合特性,在对系统进行扩展时,只需要将新开发的服务发布到ESB 中,就可以被各业务系统调用。
结合部队装备器材保障的特点和现状,提出了基于SOA的战略装备器材保障信息系统的架构设计。架构结合了SOA、Web Service、ESB 等主流技术,并以J2EE 技术描述了系统架构实现,严格遵循了SOA 的实现标准。在下一步工作中,要对ESB 的一些深层机制,如路由、格式转换等方面进行深层研究;探讨基于ESB 的SOA 架构的安全性问题;扩展SOA 架构,使其能面向不同的技术、协议、应用。
[1]王铁宁,杨学强,徐宗昌,等.装备器材保障信息化建设研究[J].物流科技,2004,27(103):17-19.
[2]杨学强,黄俊.装备保障信息化建设概论[M].北京:国防工业出版社,2011.
[3]王紫瑶,南俊杰.SOA 核心技术及应用[M].北京:电子工业出版社,2008.
[4]李丹.基于企业服务总线的SOA 研究与应用[D].大连:大连理工大学,2008.
[5]黄威,邵伟民.基于Web Services 的商业智能系统研究与设计[J]. 计算机工程与设计,2009,30(11):2702-2706.
[6]BOBBY W.Why do developers need an Enterprise Service Bus?[EB/OL].[2005 -08 -26].http://www -128.ibm.com/developerworks/webservices/library/ws-whyesb/.
[7]刘立恒.基于SOA 的商业智能平台的研究与设计[J].计算机工程,2008,34(3):75-80.
[8]王铁宁.战略装甲装备器材保障工程[M].北京:兵器工业出版社,2006.
[9]陈文伟.数据仓库与数据挖掘教程[M].北京:清华大学出版社,2006.
[10]李刚.经典Java EE 企业应用实战[M].北京:电子工业出版社,2012.
[11]袁学民.基于ESB 的SOA 架构技术的研究与应用[D].成都:西南交通大学,2008.
[12]ZENG S,HUANG S.X,FAN Y.S.Service-Oriented Enterprise Network Performance Analysis[J]. Tsinghua Science and Technology,2009,14(4):492-503.