`
m635674608
  • 浏览: 5062926 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

深入解读ESB与SOA的关系

 
阅读更多
时至今日,SOA的概念渐渐清晰了。
 
有关ESB的概念,已经吵了好多年了,还是没有定论。
我个人认为,ESB本来就是抽象的概念,而且内涵丰富,在不同的场合含义不同。因此应该从不同的角度来认识。
 
一、SOA和ESB一直是没有明确概念的两个缩略词
 
原因是这两个词包含的内涵太丰富了,无法用一两句话说清楚,并且,这个词在不同的地方含义也有所不同。
SOA----面向服务架构,实际上强调的是软件的一种架构,一种支撑软件运行的相对稳定的结构,表面含义如此,其实SOA是一种通过服务整合来解决系统集成的一种思想。不是具体的技术,本质上是一种策略、思想。
ESB----企业服务总线,像一根“聪明”的管道,用来连接各个“愚笨”的节点。为了集成不同系统,不同协议的服务,ESB做了消息的转换解释与路由等工作,让不同的服务互联互通。
 
目前ESB与SOA的确切概念依然没有。但可以明确的说SOA就是一种服务集成思想,它的不同实现方式可能差别很大,目前SOA最常见的实现方式是SCA和JBI。
 
二、ESB究竟是什么
 
这个问题在个大厂商之间,认识和观点也存在很大差异。
IBM、Oracle等认为ESB是连接服务的一种模式,但一些开源组织和其他厂商认为ESB是一种产品,并且提供了ESB连接解决方案的实现,这种实现可以认为是中间件,也可以认为是组件工具。
 
对此,我个人的观点更偏向前者,ESB是一种模式,ESB的实现方式也很多,可以称之为ESB产品。当然在不同场合ESB的含义也不同,需要鉴别。
 
三、为什么ESB总和SOA黏在一块
 
通常,这两个名词总不分家,谈论的话题中“你中有我,我中有你”。
 
 
为什么是这样的呢?
ESB是SOA吗?
两者之间究竟有什么微妙的关系呢?
 
带着疑问,继续往下看:
 
首先,ESB不是SOA。SOA的最常见的实现方式方式是SCA和JBI,而SCA的实现需要ESB,相反JBI则不需要ESB,可以参看本人对JBI和SCA分析解读的文章。
 
其次,因为IBM和Oracle(收购了BEA和SUN的牛X公司)都推崇SCA模式的SOA,因此SCA实际上已经成为SOA的事实标准,说道SOA,最先想到的就是SCA模式了。
 
最后,ESB是SCA架构实现不可缺少的一部分,ESB产品脱离了具体的应用外,没有任何意义。ESB的作用在于实现服务间智能化集成与管理的中介。通过ESB可以访问所集成系统的所有已注册服务。
 
 
四、ESB的特点
 
ESB是一种在松散耦合的服务和应用之间标准的集成方式。它可以作用于:
面向服务的架构 - 分布式的应用由可重用的服务组成
面向消息的架构 - 应用之间通过ESB发送和接受消息
事件驱动的架构 - 应用之间异步地产生和接收消息
ESB就是在SOA架构中实现服务间智能化集成与管理的中介。
 
 
---------------------
学习一个新事物,认识是最重要的,只有不断的去学习去认识,才能把握其特点、功能、属性等等,并在认识的基础上加以合理利用。任何鱼目混珠的认识只能导致偏离原则和标准。
 
http://lavasoft.blog.51cto.com/62575/165597/
分享到:
评论

相关推荐

    Next Generation SOA A Real-World Guide to Modern Service-Oriente

    这本书深入探讨了SOA的概念、设计原则、实施策略以及在当今信息技术环境中的应用。以下是对该主题的详细解读: 1. **SOA的定义与理念**:SOA是一种软件设计方法,它强调将业务功能封装为独立的服务,这些服务之间...

    解读 Microsoft Practice & Patterns(5):Web服务软件工厂

    【Microsoft Practice & Patterns系列解读(5):Web服务软件工厂】 在信息技术领域,Microsoft Practice & Patterns是一套由微软公司推出的指导性资源,旨在帮助开发者和团队更高效地进行软件开发,提升软件质量...

    《国家重点支持的高新技术领域》.docx

    11. **CRM (Customer Relationship Management)**:CRM系统帮助企业管理和分析与客户的关系,提高销售、营销和服务效率。 12. **CAD (Computer-Aided Design)**:CAD软件用于设计和绘制各种工程图,广泛应用于工程...

    经典:流程银行与新一代核心业务系统架构详解

    《流程银行与新一代核心业务系统架构详解》是赵刚博士在2009年4月28日的一次演讲主题,旨在深入探讨金融行业的信息化进程,特别是如何通过流程银行和新一代核心业务系统来提升银行业务的效率和安全性。这篇内容可能...

    普元EOS程序员培训教程

    本教程专注于介绍普元EOS平台,这是一款强大的企业级服务总线(ESB)和应用程序服务器,专为Java开发者设计,用于构建、部署和管理企业级应用程序。普元EOS提供了丰富的功能,包括服务化、工作流、数据集成、消息...

Global site tag (gtag.js) - Google Analytics