加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 综合聚焦 > 酷站推荐 > 酷站 > 正文

我们不该仅片面地看待ESB本身

发布时间:2017-06-20 09:20:07 所属栏目:酷站 来源:ITPUB论坛
导读:做SOA的事情不要先上来建立一个大而全的ESB,相反是关注你的业务问题,找到用SOA的方法来解决业务上的需求,在解决这个问题的过程当中,你会看到一系列的业务服务。这些业务服务是会产生业务价值的。它可以灵活地组装,动态地解决你变化的业务需求。这是它的
副标题[/!--empirenews.page--]

【 技术文章】

    集成技术和SOA的结合  

    谈到ESB,人们会自然想到两个关键词:集成和SOA。是的,ESB正是集成技术和SOA思想结合的产物。  

    分布式时代的集成技术

    从集成技术的发展历史来看,最早是简单地点对点集成,两个应用通过各自的接口来实现通信。这种接口固化在应用当中的紧密耦合方式,使得系统毫无灵活性可言,应用本身的每次变化都会要求其相应接口的重新定制。 

    于是发展出基于消息的中间件,接口被消息代理所取代,应用与应用之间不再是通过其本身的接口互联,而是通过独立的消息代理来通信,这使得应用与应用之间耦合更松,应用的变化影响的只是消息代理,而不需要其他应用改变。但是它仍然是点对点集成的一种方式,路由逻辑和业务逻辑没有分离,系统基本没有扩展性,部署上还是网状结构。 

    这种点对点的集成方式应付少量应用的整合还差强人意,对于大规模的集成,在EAI时代,逐渐发展出“集线器”模式。通过把所有的系统都连接到中央交换中心,这种模式巧妙地把集成逻辑和业务逻辑分离开来,大大增加了系统弹性。但是这种中央控制的方式使得管理相当复杂,同时中央又往往成为集成的瓶颈所在。 

    分布式时代的到来对于集成的方式提出了巨大的挑战,这时候ESB就应运而生。通过采用轻量级的分布式体系,ESB将更多的处理逻辑分配到多个的端点上,中央服务器不复存在,业务逻辑处理能力及系统压力可灵活调配。 

    “总线对于Hub进行了拓展,拓扑的模式还是那样,但是这个单一的物理中心被虚拟化,分散到了整个网络上,负载和灵活性都大大增加了。”IBM的毛新生这样解释ESB,他认为ESB真正实现了系统间的松耦合,从而能够应对大规模的集成。 

    “ESB就是EAI在SOA时代下的一种形态。”金蝶中间件ESB产品项目经理倪晓兵说,“区别于传统的EAI技术,ESB不仅支持高度的分布式部署,同时支持异步消息的交互,强调面向的对象是符合标准的服务。” 

    另外,ESB在集成的过程中,更强调一种“统一消息”的概念。这种“统一消息”的格式,是可以被在ESB中所集成的各个服务都认可的。例如,IBM提出的SDO这样的一种统一的数据格式。 

    SOA时代下的产物

    在SOA时代下,ESB为SOA的实施提供了底层架构的技术支持。SOA从根本上来说就是要解决两个问题:重用和异构,但是作为信息化系统建设永远要面对的两个难题,解决的方法却并不简单,所以SOA的体系庞大而复杂。 

    另外,SOA从根本上来说是一种软件架构的思想和方法论,它必须有相应的技术来帮助它落地,应用在具体的项目当中,而ESB则提供了实施SOA、简化SOA的技术手段。“ESB的意义在于让SOA有了一个可实现的基础设施。”IONA公司大中国区高级架构师陆飞舟这样说。 

    对于SOA要解决的两个难题,ESB从底层架构上都进行了技术支持。对于服务的重用,ESB提供了服务仓库和消息的路由,来实现服务之间的彼此调用。一个应用如果需要调用一个服务,它根本不用知道这个服务在什么地方,如何调用等,而只需要发送一个调用的请求,ESB就会帮助它找到那个服务,并进行绑定和消息的路由。“ESB为服务提供者和服务消费者之间的集成提供了一个平台。”倪晓兵说。 

    更重要的是ESB为分散服务提供了交互、组合和治理的基础架构。有了它,SOA才能释放自己的最大价值。 

    而对于异构环境的连接,这是ESB天生就具备的能力,因为集成技术一开始就是面向异构环境的。不同的数据、消息遵循不同的协议,采用不同的格式,为了完成它们之间的交互,ESB就必须提供转换的能力。同时作为EAI在SOA下的一种形态,ESB更具开放性,尤其是对Web服务的支持。 

    IBM为ESB定义了四个必备的功能:“路由器”——根据信息内容,在不同应用和服务之间进行信息传输和路由;“转换器”——进行应用之间的通信协议转换;“翻译机”——进行应用之间的消息格式转换;“收发室”——处理来自不同渠道的业务事件(同步传输,异步传输,发布/订阅等方式)。 

    其中“路由器”和“收发室”都是针对服务的重用而设计的,而“转换器”和“翻译机”则专门用来解决异构的通信问题。 

    针对重用和异构这两个难题,倪晓兵认为ESB提供了两个核心的功能,服务的管理和数据的转换。 

    那么ESB到底是什么呢?业内对ESB的定义是:它是由中间件技术实现并支持SOA的一组基础架构,支持异构环境中的服务、消息以及基于事件的交互,并且具有适当的服务级别和可管理性。 

    ESB是逻辑上与SOA 所遵循的基本原则保持一致的服务集成基础架构,它提供了服务管理的方法和在分布式异构环境中进行服务交互的功能。 

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读