esb 和 开源esb_ESB综述第一部分:定义ESB

esb 和 开源esb

埃森哲首席技术官唐·里珀特(Don Rippert)最近的采访主题是,SOA的全部潜力还需要五年的时间。 但是,被采访掩盖的是一个简单的断言-企业服务总线(ESB)的使用是实现ESB的全部潜力的四个步骤中的第三步。 Don Rippert模型的步骤如下:

  1. 使用可扩展标记语言(XML)以更标准的方式使用应用程序接口。
  2. 采取一些业务流程并将其转变为Web服务。
  3. 介绍和充分利用企业服务总线。
  4. 业务流程执行语言(BPEL)的生成-通过业务流程建模工具和BPEL在不更改软件的情况下创建不同的应用程序行为的能力

里珀特先生在采访中说,许多组织都有ESB,但尚未充分利用它。 他进一步指出,大多数公司仍处于第一阶段。 ESB的这种定位与Burton Group分析师Anne Thomas Manes在最近关于Yahoo Group的面向服务的体系结构的讨论中所作的声明形成鲜明对比。 安妮说:

...如果我建议您开始使用SOA的几个“基本组件”,则ESB不在我的清单上。 实际上,我不鼓励人们从ESB开始。 ESB不会鼓励良好的SOA行为。 ESB本质上是集成系统,而不是SOA系统。 SOA与拆除应用程序孤岛有关,但是集成系统会增强这些孤岛。


在参考她的书时 ,她继续提到基本组成部分包括:

  • 一个或多个服务平台(例如,.NET,Java EE应用服务器等)
  • SOA管理解决方案
  • 注册表
  • XML网关(如果服务将在防火墙外部公开)

她引用了小组成员先前的帖子,说:

“ ... ESB特别适合桥接到旧版应用程序,因此它是服务基础结构中的有用组件。许多ESB还支持可靠的消息传递,异步消息传递和发布/订阅交换模式。这些功能也可以非常漂亮。有用-但可能不在SOA项目的初始阶段(每个组织都有很多不需要这些功能的项目可供选择)。在SOA项目的后期,您可能还需要业务流程引擎,而大多数ESB都提供一个,但是绝对不是组织应该启动SOA计划的地方,所有这些功能都是您刚开始时就不需要的,因此ESB应该是后期购买”。

这似乎符合里珀特先生的观点,即许多组织已经拥有ESB,但尚未充分利用它。 Manes女士的意见还通过建议许多ESB支持的功能来帮助定义ESB的领域及其适当的功能集。

根据Wikipedia对ESB的定义 ,ESB具有以下功能:

  1. 它是面向服务架构的实现
  2. 它通常与操作系统和编程语言无关; 例如,它应该在Java和.Net应用程序之间工作
  3. 它使用XML(可扩展标记语言)作为标准通信语言。
  4. 它支持Web服务标准
  5. 它支持消息传递(同步,异步,点对点,发布-订阅)
  6. 它包括基于标准的适配器(例如J2C / JCA),用于支持与旧系统的集成
  7. 它包括对服务编排和编排的支持
  8. 它包括基于内容的智能路由服务(迭代路由)
  9. 它包括标准化的安全模型,用于授权,认证和审核ESB的使用
  10. 它包括发送应用程序和接收应用程序之间的格式转换服务(通常通过XSLT),以促进数据格式和值的转换
  11. 它包括针对用于发送和接收消息的模式的验证
  12. 它可以统一地应用业务规则,从其他来源丰富消息,拆分和合并多个消息以及处理异常
  13. 它可以基于非集中化策略有条件地路由或转换消息-意味着不需要中央规则引擎
  14. 监视各种SLA(服务水平协议)阈值消息延迟和服务水平协议中描述的其他特征
  15. 它(通常)促进“服务类别”,以适当地响应优先级较高和较低的用户
  16. 它支持排队,如果应用程序暂时不可用,则保留消息
  17. 它由在(地理位置)分布式环境中选择性部署的应用程序适配器组成

该维基百科定义承认“ ESB的确切定义有所不同”。

Manes女士和Rippert先生似乎都同意ESB很有用,并且代表了SOA部署的后期功能集。 维基百科的定义可以作为讨论如何定义这种有用技术的起点。

在随后的讨论中,请专注于ESBr的定义,而不是本文引用的行业专家的观点。

翻译自: https://www.infoq.com/articles/ESB-Roundup-Part1-Defining-ESB/?topicPageSponsorship=c1246725-b0a7-43a6-9ef9-68102c8d48e1

esb 和 开源esb

你可能感兴趣的:(java,大数据,编程语言,python,人工智能)