在银行系统中企业服务总线的应用分析
摘 要:国库信息处理系统(简称TIPS)是建立在财政、税务与国库各自独立的信息系统之上的信息交换和处理系统。本文详细介绍了ESB,以及如何利用ESB解决TIPS所面临的支持不同接入方式、随需应变的业务处理流程,以及高性能、高可用性和高可扩展性的问题。
关键字:企业服务总线;银行系统;国库信息处理系统;ESB;SOA;中间件
1 系统面临的问题
目前各地财政、税务、国库部门逐渐实现了信息化,建立了自身的计算机业务处理系统,如“金财工程”、“金税工程”、“国库会计核算系统”等。但各部门系统间各自独立,难于实现信息共享等诸多问题。为了从根本上改变目前国库部门在一定程度上存在的“信息孤岛”的局面,需要建立国库与财政、税务、海关、商业银行间的信息交换的国库信息处理系统。
由于需要集成多个部门的现有系统,现有的系统众多并且复杂,所以国库信息处理系统是一个庞大复杂具有高适应性的信息系统。该系统设计不仅必须能支持不同的接入方式,而且需要适应未来组织架构、业务流程、接口规范以及单个系统实现技术的改变,要做到随需应变,同时也要解决系统高性能性、高可用性和高可扩展性的问题。
2 企业服务总线
2.1 企业服务总线的概念
总线一词来源于硬件领域(ESB这一术语是由Gartner提出的)。在软件领域,总线是指一种架构模式,它允许多个应用程序以去耦合或松散耦合的方式结合在一起。在一个软件“总线”上,应用程序的添加和删除对同在总线上的其他应用程序造成的影响非常小。
ESB[1](企业服务总线) 定义通常如下:它是基于中间件技术实现并支持SOA 的一组基础架构功能,它主要实现消息的传输、转换和路由,它是连接企业各种纷繁复杂应用的骨干神经系统。将连接到ESB上的不同的应用程序定义为不同组件(或称为服务),服务之间的接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言[2]。通过这些服务之间定义良好的接口和契约,种种不同应用通过松散耦合的方式结合在一起,以合理的、符合业务需要的节奏连接应用程序和调节消息流量,从而达到提高效率和可靠性、加快响应速度的目的。
2.2 企业服务总线的功能
下面对现有文献中确定的一些 ESB 最基本的功能进行了总结和分类[3]:
● 通信:提供位置透明性的路由和寻址服务 ;控制服务寻址和命名的管理功能;至少一种形式的消息传递范型(例如,请求/响应、发布/订阅等等)。
● 集成:支持服务提供的多种集成方式,比如 Java 2 连接器、Web 服务、异步通信、适配器等等。
● 服务交互:一个开放且与实现无关的服务消息传递与接口模型,它应该将应用程序代码从路由服务和传输协议中分离出来,并允许替代服务的实现。
当然,在许多甚至是大多数情形中往往需要其他的功能,并且这种需要变得越来越常见。主要包括:安全性、服务质量和服务级别、消息处理、管理和自治和基础架构智能等功能。
2.3 ESB与SOA的关系
面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。ESB 支持这些服务交互功能,并通过提供集成的通信、消息 传递以及事件基础架构来支持这些功能。因此,它将当今正在使用的主要企业集成模式组合成一个实体。ESB 为 SOA 提供与企业需要保持一致的基础架构,从而提供合适的服务级别和可管理性、以及异构环境中的操作。ESB就是在SOA架构中实现服务间智能化集成与管理的中介。
3 系统的设计
以企业服务总线为核心采用面向服务的体系架构,可以解决TIPS与多个部门的不同平台的多个系统进行集成遇到的随需应变具有高度的可适应性的问题。
3.1 系统的逻辑架构