企业服务总线Enterprise service bus介绍
企业服务总线(Enterprise service bus). 以往企业已经实现了很多服务, 构成了面向服务的架构,也就是我们常说的SOA. 服务的参与双方都必须建立1对1 的联系,让我们回顾一下SOA架构有哪些基本的要求:
- SOA在相对较粗的粒度上对应用服务或业务模块进行封装与重用;
- 服务间保持松散耦合,基于开放的标准, 服务的接口描述与具体实现无关;
- 灵活的架构 -服务的实现细节,服务的位置乃至服务请求的底层协议都应该透明;
在SOA中,我们还需要这样一个中间层,能够帮助实现在SOA架构中不同服务之间的智能化管理。这是我们就需要企业服务总线(Enterprise service bus).
在N层结构的ESB: 
企业服务总线(Enterprise service bus)通讯层:

ESB的主要功能是:
1.对各个服务之间消息监控与路由
2.解决各个服务组件之间通信
3.控制服务版本与部署
4.满足服务像事件处理,数据转换与映射,消息与事件查询与排序,安全或异常处理,协议转环,保证服务通讯的质量.
又有下表:
|
定位清晰 |
ESB有助于从服务消费者服务提供者之间解耦。ESB提供了一个集中的平台使任何应用程序进行相互通信,使消息发送者到信息接收者解耦。 |
|
协议转换 |
ESB应该能够无缝地集成不同传输协议应用程序如HTTP,JMS,FTP,文件批处理和SMTP,TCP。 |
|
消息转换 |
ESB提供将消息从一种格式转换为其他基于开放的标准,如XSLT和XPath。 |
|
消息路由 |
ESB一个重要的功能是决定传入消息的最终目的地,通常这归类为消息路由。 |
|
消息增强 |
ESB提供基于传入消息附加丢失数据的消息增强机制. |
|
安全 |
身份验证,授权与加密功能,为确保传入的消息安全, 防止有人恶意使用的ESB,以满足服务提供者信息安全。 |
|
监控与管理 |
监控和管理环境可配置高性能和可靠的特性,并且还可以监视的运行时消息流. |
ESB纵向图示意图:

主要优点:
增加灵活性,更容易适应需求变化
由点扩展到整个企业的部署解决方案(分布式总线)
更多的配置,而不是集成代码
没有集中的规则引擎,没有集中的broker
零停机时间;使企业成为“可重构”的解决方案
主要缺点:增加系统开销
通信速度较慢,特别是对那些已经兼容的服务
目前开源ESB产品与项目:
- Apache ServiceMix
- Apache Synapse
- JBoss ESB
- MassTransit
- NetKernel
- NServiceBus
- Petals ESB
- Spring Integration
- Open ESB
- WSO2 ESB
- Mule
- UltraESB
- Talend ESB
- Shuttle Service Bus
希望对您软件架构有帮助.
企业服务总线Enterprise service bus介绍的更多相关文章
- 【转载】企业服务总线Enterprise service bus介绍
企业服务总线(Enterprise service bus). 以往企业已经实现了很多服务, 构成了面向服务的架构,也就是我们常说的SOA. 服务的参与双方都必须建立1对1 的联系,让我们回顾一下SO ...
- 【服务总线 Azure Service Bus】ServiceBus 队列中死信(DLQ - Dead Letter Queue)问题
Azure Service Bus 死信队列产生的原因 服务总线中有几个活动会导致从消息引擎本身将消息推送到 DLQ. 如 超过 MaxDeliveryCount 超过 TimeToLive 处理订阅 ...
- 【服务总线 Azure Service Bus】Service Bus在使用预提取(prefetching)后出现Microsoft.Azure.ServiceBus.MessageLockLostException异常问题
问题描述 Service Bus接收端的日志中出现大量的MessageLockLostException异常.完整的错误消息为: Microsoft.Azure.ServiceBus.MessageL ...
- ESB(Enterprise Service Bus)企业服务总线介绍
ESB(Enterprise Service Bus)企业服务总线介绍 ESB全称为Enterprise Service Bus,即企业服务总线.它是传统中间件技术与XML.Web服务等技术结合的产物 ...
- ESB 企业服务总线
整理的OSChina 第 38 期高手问答 —— ESB 企业服务总线,嘉宾为@肖俊_David . @肖俊_David 恒拓开源架构师,热衷于JAVA开发,有多年的企业级开发经验.曾参和设计和开发基 ...
- ESB (Enterprise Service Bus)
入门
在本文中,ESB相关技术概念和术语.其他需要了解的入门的基础知识,并介绍了一些初步的了解ESB产品.因为它是一个新的ESB.将自己的学习内容与过程,记录下来! 愿在这里与大家分享一下,共同进步与提高! ...
- ESB企业服务总线
ESB是企业服务总线(Enterprise Service Bus)的缩写,是中间件技术与Web Service等技术结合的产物,也是SOA系统中的核心基础设施.ESB就是一个服务的中介,形成服务使用 ...
- 完全国人自主研发原创的智能软件路由器BDS即将发布,附带企业服务总线ESB功能
完全国人自主研发原创的智能软件路由器即将发布: 完全国人自主研发原创的智能软件路由器BDS即将发布,附带企业服务总线ESB功能 智能软件路由器 BDS 简要介绍 http://kan.weibo.co ...
- 企业服务总线ESB
# 企业服务总线ESB 由中间件技术实现并支持SOA的一组基础架构,支持异构环境中的服务.消息以及基于事件的交互,并且具有适当的服务级别和可管理性. 通过使用ESB,可以在几乎不更改代码的情况下,以一 ...
随机推荐
- ios开发--编码格式
1.url编码 ios中http请求遇到汉字的时候,需要转化成UTF-8,用到的方法是: NSString * encodingString = [urlString stringByAddingPe ...
- Java学习笔记之:Java 流
一.介绍 Java.io包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io包中的流支持很多种格式,比如:基本类型.对象.本地化字符集等等. 一个流可以理解为一 ...
- Hadoop完全分布式集群配置
1.前话 寒假实在太闲了,所以闲着无聊地去了解"大数据"这个新概念,这几年到处都在说什么大数据时代的,不能不让我感到好奇啊. 大数据有啥用?随便谷歌百度一大堆我也不多说了. 我自己 ...
- 开发ProxyServer的时候如何在一台PC上调试
为了测试在真实的网络环境下你的ProxyServer性能如何,而你手头又只有一台电脑,怎么办? 打开你的ProxyServer(我用java写的,因此ProxyServer的进程是javaw.exe) ...
- Tomcat运行DOM4J的时候报ClassNotFoundException
WEB应用中一个模块用到了DOM4J,加载到TOMCAT中运行,报错如下(给出部分StackTrace): java.lang.ClassNotFoundException: org.dom4j.Do ...
- 生成24位字符串ID__IdGenerator.java
此工具类用于生成24位字符串ID,唯一不重复.直接通过 IdGenerator.get() 获取. 源码如下:(点击下载源码 - IdGenerator.java ) import java.net. ...
- Java实现图片压缩代码,图片大小转换
在很多项目中我们会把上传的图片做处理,比较图片上传过多对服务器的容量和带宽有很多的浪费,如果不是必须的高清图片,我们可以通过代码来做压缩.在我的项目中我们压缩图片的目的是让web页面打开的速度很快,并 ...
- word-pattern(mock)
注意: // String要用equals,不然比较结果不对,会出bug// 使用String.split // boolean打印用 %b // abba 对应 cccc 也不行, 所以要用set ...
- Cocos2d-x 开发手记
1.所有的源文件统一新建到Classes里,否则无法找到源文件,这样也便于跨平台编译 2.绘图坐标系,与opengl采用相同坐标系,左下角为原点 纹理坐标系,以左上角为原点 3.最近有在学习C ...
- js之dom_2
动态脚本1 载入脚本文件 var s = document.createElement("script"); s.src = "test2.js"; s.typ ...