ESB企业服务总线 --- ESB概述

来源:互联网 发布:安装apache 编辑:程序博客网 时间:2024/05/17 01:05
谈及企业服务总线(ESB),在有面向服务的架构(SOA)实施经验的开发者眼中一定不会陌生。
这些年,人们一直在谈论它,以至有些人认为“实施SOA一定需要ESB”,或“只要将ESB架起来了,
我们就SOA了”。这些说法有可取之处,也存在片面之嫌,由于业界对于ESB没有统一、标准的定义,
所以一千个人眼中有一千个“ESB”也就成了情理中的事情了。然而,怎么才能将ESB用好?我们需要
清楚地认识ESB在SOA中所扮演的角色,理解哪些工作是ESB的职责之内?哪些却不是?

从下面可以看出ESB在各个系统服务之间发挥的作用,看看你是否理解正确了。





从上图可以看出,ESB是为各个系统的服务又管理各个系统的服务,它可以利用现有的服务组合新的系统,
图上它把OA、CRM、ERP整合等,那么它是不是就是一个万能的中间平台,任何服务都可以接入到上面?
这是一个很理想的目标,但这个目标是不可能实现的。
原因有两点:其一,仲裁逻辑一般是非常具体的,具体的服务有具体的整合需求。我的理解是它们在某些
更详细的小的方面也有很多不同,需要把所有的不同大的差异还是小的差异都屏蔽掉,是不容易做到的。
我们要考虑的不仅仅是协议之间的差别,还需要考虑消息格式的差别。其二,如果有这样的设计/实现存在,
ESB产商为何不把这个特性直接实现了呢?你也许会说产商不理解具体的业务,而具体的业务是复杂的,SI/ISV
却了解这些复杂业务。而事实上,ESB解决的更多是技术层面的工作,业务层面的工作大多数不属于ESB的范畴,
复杂的业务逻辑不是在业务系统中实现,就是在其它SOA组件中实现。


原创粉丝点击