`
abcdzt
  • 浏览: 13814 次
社区版块
存档分类
最新评论
阅读更多
Accenture首席技术官Don Rippert的近期访谈的主题是:激活SOA的全部潜力还需五年。但是,访谈中隐藏着一个简单的论断,即使用企业服务总线(Enterprise Service Bus,ESB)是实现ESB全部潜力4步中的第三步。Don Rippert模型中的步骤如下:

使用XML,以更标准的方式使用应用程序接口。
捕获一些业务过程,并将它们转化成为Web服务。
引入并全面使用企业服务总线。
产生业务过程执行语言(Business Process Execution Language,BPEL),它可由业务过程建模工具完成。BPEL可以改变应用程序的行为,而无需修改软件。
Rippert先生在采访中表示,尽管很多组织拥有ESB,但是它并没有被完全利用。他进一步的表示,大多数公司仍处于阶段1。与这个ESB所处位置的论断相对比的是,Burton Group的分析师Anne Thomas Manes的叙述,其发表于近期面向服务架构Yahoo Group的讨论中。Anne说:

......如果缺少我推荐启动SOA的“基本组件”,ESB将不会列在我的清单中。事实上,我并不鼓励人们由ESB开始。ESB并不会鼓励好的SOA行为。ESB本质上是集成系统,而非SOA系统。SOA是用于拆卸应用竖井(application silos),而集成系统则是修补这些竖井。
引用她的书,她接着提及的基本组件包括:

一个或多个服务平台(如,.NET,Java EE应用服务器等)
SOA管理解决方案
注册表
如果服务要被暴露在防火墙之外,那么需要XML网关
引用组员早期的帖子,她说道:

“......ESB特别适合桥接传统应用,因此,在服务基础设施中,它是一个有用的组件。很多ESB也支持可靠消息传递、异步消息传递和发布/订阅交换模式。这些能力都非常有用,但是,在SOA项目的初始阶段可能不会发挥多大的用途。(每个组织有很多不选用这些能力的项目。)在SOA项目的后期,你还可能需要一个编制(orchestration)引擎,并且大多数的ESB都会提供一个。即便如此,ESB也绝对不是组织启动SOA的起点。所有这些能力你一开始并不需要。因此,ESB应该在后期购买。”
这似乎符合Rippert先生的观点,即尽管很多组织拥有ESB,但是它并没有被完全利用。Manes女士的评论同样有助于定义ESB的范围,通过暗示许多ESB支持的特性,它确定了一组适当的能力。

根据维基百科的ESB定义,ESB有如下特性:

它是面向服务架构的实现。
它通常是操作系统和编程语言无关的;它应能在Java和.Net应用程序之间工作。
它使用XML(可扩展标识语言)作为标准通信语言。
它支持Web服务标准。
它支持消息传递(同步、异步、点对点、发布-订阅)。
它包含基于标准的适配器(如J2C/JCA),用于集成传统系统。
它包含对服务编制(orchestration)和编排(choreography)的支持。
它包含智能、基于内容的路由服务(itenerary路由)。
它包含标准安全模型,用于ESB的认证、授权和审计。
它包含转换服务(通常是使用XSLT),在发送应用和接收应用之间转换格式,简化数据格式和值的转换。
它包含基于模式(schema)的验证,用于发送和接收消息。
它可以统一应用业务规则,充实其它来源的消息,分拆和组合多个消息,以及处理异常。
它可以条件路由,或基于非集中策略的消息转换,即不需要集中规则引擎。
它可监视不同SLA(服务级别合约)的消息响应门限,以及在SLA中定义的其它特性。
它(常常)简化“服务类别”,向更高或更低优先级用户做出适当的响应。
它支持队列,在应用临时不可用时用来保存消息。
它由(地理)分布式环境中的选择性部署应用适配器组成。
维基百科的定义容许“ESB精确定义的变种”。

Manes女士和Rippert先生似乎都同意ESB是有用的,并代表项目后期用于部署SOA的功能集合。维基百科的定义可以作为讨论的起点,主题是关于如何定义这一有用技术。

在随后的讨论中,请关注ESB的定义,而非本文中引证的业界专家的观点。
分享到:
评论

相关推荐

    ESB 需求分析 项目设计 架构设计

    - **扩展性和高可用性**:定义ESB平台需要达到的水平,包括HA(High Availability)配置和集群设置等。 - **性能指标**:根据实际业务场景,设定ESB的吞吐量、响应时间等性能指标。 - **数据传输可靠性**:确保关键...

    专题资料(2021-2022年)ESB项目需求分析和方案设计浅谈.docx

    方案设计阶段,我们需分析应用环境,定义ESB与各应用的接口模式,构建ESB架构,选择合适的产品和适配器,设计组件模型以遵循SOA原则。同时,需要规划运作模型以满足非功能性需求,设计服务流,包括路由、转换和映射...

    ESB解决方案.pdf

    JBI是一种ESB规范(Java领域),定义了组件框架、组件描述、部署模型、归一化消息模型、客户端API接口和管理模型(JMX)。 五、ESB定义 ESB是面向服务框架的实现,通常是操作系统和编程语无关的,可以在Java和.NET...

    ESB原理、构架、实现及应用

    ##### 2.1 定义 ESB是一种用于实现不同应用和服务之间通信的技术框架,它提供了一种标准化的方式来连接不同的服务,实现服务之间的交互。ESB通常具备消息传递、服务路由、协议转换、数据格式化等功能。 ##### 2.2 ...

    ESB项目需求分析和方案设计浅析.doc

    1. 分析IT应用环境,定义ESB与各应用的接口模式。 2. 设计ESB架构概要,确定架构原则。 3. 选择合适的ESB产品和适配器,以支持与外围系统的连接。 4. 设计组件模型,遵循SOA的分离关注点原则。 5. 规划运作模型,...

    mule -esb 源码

    首先,`logging.conf`是日志配置文件,它定义了Mule ESB的日志记录行为。在Mule中,日志系统是至关重要的,因为它提供了一种跟踪和调试应用运行时问题的手段。通常,Mule ESB使用log4j或Logback作为日志框架,`log4j...

    ESB技术学习教程,适用初学ESB人员

    2. **服务交互**:ESB定义服务接口,通常使用WSDL进行描述,允许支持多种服务实现。它还提供服务目录和发现机制,使得服务消费者可以找到并调用合适的接口。 3. **集成**:集成是ESB的核心功能之一,它连接各种...

    talend-ESB是什么?OSGI是什么?TOS-ESB相关组件介绍

    ESB(企业服务总线)是面向服务体系架构(SOA)发展而来的,它将传统中间件技术与XML、Web服务等新兴技术相结合。ESB在企业中扮演着基础的连接中枢角色,是构成企业神经系统的必不缺少的组件。它改变了传统的软件...

    C# ESB 分布式处理技术 Remote

    - 创建远程对象:定义要在服务器上运行的类,并标记为`[Serializable]`和`[RemotingEnabled]`。 - 配置服务器:在服务器端配置Remoting服务,如设置激活方式、端口等。 - 创建客户端代理:在客户端创建一个指向...

    ESB原理及Mule ESB实践

    - **Endpoint(端点):** 定义了服务的入口和出口,可在路由器中配置监听和路由规则。 - **Router(路由器):** 根据消息属性进行过滤和分发。 - **Component(组件):** 服务处理的核心部分,具有自己的生命...

    ESB(背景、介绍、定义).doc

    "ESB(背景、介绍、定义)" ESB(Enterprise Service Bus,企业级服务总线)是过去消息中间件的发展,它采用了“总线”这样一种模式来管理和简化应用之间的集成拓扑结构,以广为接受的开放标准为基础来支持应用之间...

    企业服务总线ESB技术设计方案.pdf

    企业服务总线体系结构是指ESB平台的逻辑架构,定义了ESB平台的各个组件之间的关系和交互方式。 在ESB技术设计方案中,企业服务总线功能性需求解决方案是一个非常重要的组件。该方案定义了ESB平台的功能性需求,包括...

    utils-0.1.0.zip

    2. **配置文件**:配置文件用于定义ESB的运行时行为,包括服务端点、连接器设置以及错误处理策略等。理解并熟练操作这些配置文件,可以有效地调整和优化ESB的性能。 3. **文档**:开源项目通常会提供详细的用户指南...

    ESB 企业服务总线

    5. **路由和服务发现**:ESB提供了智能路由功能,可以根据预定义的规则或动态条件将消息发送到正确的目的地。同时,它还支持服务注册和发现,帮助服务消费者找到所需的服务。 6. **事务管理**:在多系统交互中,ESB...

    企业消息总线(ESB)源代码

    1. **消息路由**:根据预定义的规则,ESB可以将消息路由到正确的接收方,无论是另一个系统、服务或者队列。 2. **服务代理**:ESB可以作为服务的代理,隐藏后端服务的复杂性,提供统一的接口给前端应用。 3. **...

    泛微Ecology9.0数据展现集成之ESB接口应用

    - **ESB查询服务**:定义了与外部系统交互的查询逻辑,包括查询条件、返回字段等。 - **ESB回显查询服务**:处理由泛微Ecology9.0发起的更新或修改请求,确保外部系统的数据同步。 - **字段设置**:自定义展示和...

    ESB应用Spring_Hello_World

    【ESB应用Spring_Hello_World】是针对JBoss ESB的一个示例教程,它展示了如何在ESB中集成Spring框架来实现一个简单的服务调用。这个应用的主要目的是演示基于Spring的action调用机制,利用ESB进行消息传递和处理。 ...

Global site tag (gtag.js) - Google Analytics