消息代理中间件的作用

来源:百度文库 编辑:神马文学网 时间:2024/05/21 03:40:45
文章出处:赛迪网   发布时间:2005-04-05
消息代理(Message Broker)是一种在数据源与目的地之间移动数据使信息处理流畅的软件技术,数据源与目的地包括已有的应用、文件、数据库、对象(如CORBA、COM)、硬拷贝输出及Web客户端等。消息代理技术实现之后的产品形式就是一种中间件。
 
作为面向消息的中间件(MOM)的一部分,消息代理中间件在企业应用集成(Enterprise Application Integration ,EAI)中的作用日趋明显。分布式环境下,业务单位四处散布,包罗万象的应用运行在不同的软、硬件平台上,消息代理中间件主要提供应用集成所必须的数据的递送、收集、翻译、过滤、映射和路由等功能,屏蔽不同的硬件平台、数据库、消息格式、通信协议之间的鸿沟与差异,提供应用到应用之间的高效、便捷的通信能力。
 
消息代理最典型的应用环境包括:
 
1.有许多程序,特别是混合多种语言;
 
2.多个数据源以及/或异构的数据库;
 
3.应用的生命周期期望在3年以上
 
4.处理的高吞吐量,复杂的系统设计
 
5.在客户/服务器天地中存在"老的"或者已有的应用
 
6.行将进行系统的增强、增加和修改
 
7.复杂的应用间的通信既有企业内部的通信,又有企业间的通信
 
Gartner Group根据调查统计,企业在开发应用的过程中,30%-40%的费用都浪费在开发和维护与企业业务逻辑无关的各种接口上。随着企业或企业间应用数量上的增加,应用间的通信接口日益增多,不同的平台、不同的语言与技术所带来的难度成倍的增长。1996年,Gartner Group就预测:消息代理中间件由于降低了企业/机构内部应用的复杂交互,将变得和数据库管理系统、数据仓库一样重要。
 
归纳起来,基于消息代理中间件实现应用集成的主要理由有以下几个方面:
 
1.通过点对点的应用接口完成应用的集成复杂度高,花费大,严重地限制企业的灵活性。消息代理中间件如同一个软件的HUB,连接需要交互的各个应用系统,减少了应用系统接口的数量、相互的技术依赖性。
 
2.应用与应用间传递的数据需要转换,传递需要按照优先级、实时地或批处理的方式进行。消息代理中间件提供与各种资源的接口、数据转换能力和消息处理能力,高效地实现应用之间的消息传递。
 
3.复杂的业务处理逻辑带来应用间、应用与人之间交互的复杂性,要求提供一种支持流管理、处理智能化开发的简便性。新一代的消息代理中间件以"商件(businessware)"形式,提供商务逻辑层开发能力。
 
4.集成应用的体系结构必须能适应业务逻辑、组织机构的变化,最大程度地减少对已有应用的修改。消息代理中间件构造了一个基于消息的代理骨干,其基于API的适配器以及包装程序完全适应这一要求。