基于SOA架构的ESB航空信息数据库系统设计 |
2012-06-23 11:52 作者:刘 红 来源:硅谷网-《硅谷》杂志 HV: 编辑: 【搜索试试】
|
|
摘要:航空产业是现代服务业的重要一类,它的发展一直处于引领技术发展和改革的排头兵。因为乘坐航空飞机的人都是社会中相对富裕的阶层,相对来说,对于服务的层次要求更高。因此如何在快速发展和高度竞争的现代服务业中脱颖而出,不仅需要看得见的硬件条件,更需要无形的软性条件为更好的服务提供技术支撑,在SOA技术基础上,探讨航空统一数据信息平台的组成架构和技术实现,结合UML建模技术,分析与设计一个基于SOA技术的航空统一数据信息平台。
关键词:面向服务的体系结构;航空信息数据库系统;企业服务总线
中图分类号:TP391文献标识码:A文章编号:1671—7597(2012)0510
【《硅谷》杂志2012年5月刊文】
1SOA技术架构
面向服务的体系结构(Service-OrientedArchitecture,SOA,也叫面向服务架构),是一个组件模型,它能够将应用程序不同功能的单元(称为服务)通过这些单元(或服务)之间定义一个良好的接口和契约连接起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互;它也是一个组件模型,可将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以一种统一和通用的方式进行交互;同时,它还可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
2企业服务总线架构在航空系统中的应用
2.1ESB在航空公司中提供的服务功能
企业服务总线(ESB)全称为EnterpriseServiceBus。
本文描述了ESB平台架构以及主要内容,航空公司的ESB平台将使用IBMMB产品和自开发的服务管理平台来实现。它主要提供以下主要功能:
1)基于MB/MQ的服务逻辑模块,负责处理跨系统的、公共逻辑,例如路由、标准的加密解密、权限控制等。
2)基于WAS的管理模块(也可以基于其它J2EE中间件),实现了对ESB运行平台的后台管理和服务管理等功能。
服务是东航信息交换核心系统的主要表现形式,服务调用的典型过程简要描述如下:
1)首先,服务请求方根据请求报文的要求,生成XML请求报文;然后将生成的XML报文通过MQ传递给ESB。请求报文中包括的信息包括服务编号、流水号、请求方系统编号、渠道编号、请求提交时间戳、版本号等。
2)ESB核心模块在收到请求后,会执行一系列的处理。例如通过认证授权组件检查这个请求是否合法,检查该请求是否重复请求,执行认证、授权等安全操作,加密解密,执行流量控制和判断调用服务的版本号等。在这个过程中,还会将服务得更详细信息,例如服务的名称、服务的超时时间、服务的提供方等信息补充到请求报文中。最后,根据服务方式,如果是单步、快速通道服务,通过路由转发给服务提供方;如果是多步服务,需要确定当前需要执行哪一个步骤的服务,如果请求报文没有分拆,还需要根据步骤分拆请求报文;如果是发布订阅服务,将消息广播给消息的订阅方并返回成功。
3)请求转发给服务提供方时,有两种处理方式:一种,是服务系统已经有自有的通信协议和报文格式的;另一种,是服务系统采用了ESB标准的通信协议和报文格式的。对于第2种情况,直接将请求转发过去即可。第一种情况的处理,需要引入前端接入模块,在这里起到了通信协议和报文格式转换的功能,将服务系统接入到ESB的架构中。ESB会根据服务服务版本号,调用不同版本的服务。
4)服务请求方在最终得到请求报文后,经过处理,将结果返回给ESB。如前面所描述一样,这个返回的过程,有可能通过后端接入的转换,然后到核心模块。这时,核心模块需要检查一下返回的响应报文,例如是否超时。具体平台架构如图1所示:
图1ESB平台应用架构图
2.2ESB平台技术架构
ESB平台包含服务逻辑模块和服务管理模块,对于服务逻辑模块,分为前端接入、ESB服务控制和后端接入三部分:
2.2.1前端接入
前端接入将服务请求方的服务请求报文转换成标准XML报文,主要都是实现报文格式、通信协议的转换,同时通过加密解密等功能进一步屏蔽系统的异样性。前端接入在请求接入的时候,会实现一个支持多种通信方式、多通信端口的连接层,请求接出时会是一个单一的接出层。
2.2.2ESB服务控制
服务请求方和服务提供方通过XML/MQ的方式与ESB进行通信;并且提供前端API,可以将前端请求封装成服务对象,屏蔽了XML的处理,方便调用。ESB核心平台主要包括以下功能模块:
1)单步服务
2)多步服务
3)发布订阅
4)服务路由
5)流量控制
2.2.3后端接入
后端接入将标准XML报文转化成服务提供方的服务请求,主要都是实现报文格式、通信协议的转换,同时通过加密解密等功能进一步屏蔽系统的异样性。后端接入在请求接入的时候,会实现一个支持多种通信方式、多通信端口的连接层,它与前端接入正好相反。
2.3ESB平台集成架构
ESB平台的服务管理模块主要负责后台管理功能,包括服务管理,系统管理,日志管理,错误处理和认证授权五大功能。
ESB平台的服务逻辑模块主要负责ECIF与东航其他系统之间的交互。
通过ESB平台提供集多个系统间的数据交互功能,并进行统一调度、管理、监控。
2.4ESB平台部署架构
部署架构根据系统逻辑和物理分布分为展现层、应用层和数据层。其中:
2.4.1展现层
不同客户通过特定的工作台访问系统核心服务;
2.4.2应用层
1)展现层通过智能服务路由,动态访问应用服务器,路由策略可设置为:默认情况下是访问某设定的服务器,当某服务器有故障时,可以通过智能路由控制把访问控制路由到其他各个群集实现负载均衡。
2)应用/ESB服务器集群部署,服务器可负载分担,支持动态扩展。
3)应用/ESB服务器中服务组件通过动态数据路由透明访问数据层。
2.4.3数据层
核心数据库采用集群部署。
3ESB系统运行过程及模型
1)将MQCluster入口的QueueManager(QM_GW_IN)放在MB1的机器上,将MQCluster出口的QueueManager(QM_GW_OUT)放在MB2的机器上。由于QM_GW_IN和QM_GW_OUT和MBCluster部署在一起,以解决系统单点的问题;。
2)WAS1和WAS2进行Cluster部署,ECIF和ESB的管理模块分别部署。
3)DB1和DB2进行OracleRAC部署,ECIF和ESB各起一个Instance进行处理。
参考文献:
[1]史美林、向勇、伍尚广,协同科学-从‘协同学’到CSCW清华大学学报,1997,37(1):85-88.
[2]IBMRedBook.IntroductiontotheNewMainframe:z/OSBasics.2006.
[3]李昭原,《数据库技术新进展》,清华大学出版社出版,1997.
[4]王珊,《数据库与数据库管理系统》,电子工业出版社出版,1995.
[5]徐敏,银行CRM系统中的CIF模型及CalICenter系统设计学位论文,西安电子科技大学,2004.
[6]JosephS.valacich等,系统分析与设计基础,施平安译,清华大学出版社,2005.
[7]吕廷杰等,客户关系管理与主题分析,北京:人民邮电出版社,2005.(注:本文版权归作者本人和硅谷杂志所有,禁止他人未经授权转载)
|
|
|
|
【对“基于SOA架构的ESB航空信息数据库系统设计”发布评论】 |
版权及免责声明:
① 本网站部分投稿来源于“网友”,涉及投资、理财、消费等内容,请亲们反复甄别,切勿轻信。本网站部分由赞助商提供的内容属于【广告】性质,仅供阅读,不构成具体实施建议,请谨慎对待。据此操作,风险自担。
② 内容来源注明“硅谷网”及其相关称谓的文字、图片和音视频,版权均属本网站所有,任何媒体、网站或个人需经本网站许可方可复制或转载,并在使用时必须注明来源【硅谷网】或对应来源,违者本网站将依法追究责任。
③ 注明来源为各大报纸、杂志、网站及其他媒体的文章,文章原作者享有著作权,本网站转载其他媒体稿件是为传播更多的信息,并不代表赞同其观点和对其真实性负责,本网站不承担此类稿件侵权行为的连带责任。
④ 本网站不对非自身发布内容的真实性、合法性、准确性作担保。若硅谷网因为自身和转载内容,涉及到侵权、违法等问题,请有关单位或个人速与本网站取得联系(联系电话:01057255600),我们将第一时间核实处理。
|
|
|
|