ESB面试题 - 高飞网
7人看过

ESB面试题

2014-03-20 01:25:23

1. 介绍一下ESB的出现背景及优势,以及你对ESB的了解?

ESB全称为Enterprise Service Bus,即企业服务总线。它是传统中间件技术与XMLWeb服务等技术结合的产物。ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。ESB的出现改变了传统的软件架构,可以提供比传统中间件产品更为廉价的解决方案,同时它还可以消除不同应用之间的技术差异,让不同的应用服务器协调运作,实现了不同服务之间的通信与整合。从功能上看,ESB提供了事件驱动和文档导向的处理模式,以及分布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能力,并可以提供一系列的标准接口。


2. 相对于传统的点对点的系统集成,ESB的优点是什么?

传统信息系统的现状:

  (1)缺乏一体化、集成化的信息系统,信息孤岛现象比较严重。

  (2)企业各类资源无法实现共享和优化。

  (3)应用系统不易改变。传统的应用程序基本上是根据给定的业务需求定制开发,业务功能依赖复杂的技术手段实现,系统都是刚性的。

点对点集成结构存在着严重的隐患,即随着应用系统个数的增加。接口的数目将快速增长,其总数为n(n-1)个接口(n为应用系统个数)。应用系统之间存在着高度的耦合性。这为系统的维护带来巨大的复杂性,任何一个系统的升级和改动都将影响到其他与之相关的应用系统的修改。随着控制技术和信息技术的发展,企业信息化涉及到的子系统越来越多,点对点的集成方式已无法满足需求。

ESB的概念是从SOA发展而来的。SOA描述了一种IT基础设施的应用集成模型,其中的软构件集是以一种定义清晰的层次化结构相互耦合,其中,一个ESB是一个预先封装的SOA实现,它包含了实现SOA分层目标所必需的基础功能部件。ESB是一种是松散耦合的服务和应用之间标准的集成方式,它可以作用于:

  (1)面向服务的架构:分布式的应用由可重用的服务组成。

  (2)面向消息的架构:应用之间通过ESB发送和接受消息。

  (3)事件驱动的架构:应用之间异步的产生和接收消息。

ESB是一个完全面向企业级的中间件解决方案,可以架构在企业现有的网络框架、软硬件系统之上,构筑出一个企业级的信息系统解决方案。在ESB中,服务器犹如一个个汽车站,可以自由地连接和脱离ESB中间件,所有的信息系统都可以通过其发送或接受任务、指令,它适用于所有的现有的或未来的信息应用平台。

基于SOA的网络办公系统架构图


  对企业而言,采用ESB中间件系统作为企业级信息系统融合方案中的中枢技术,几乎可以无须添加任何软硬件设备,就可把过去、现有和未来的IT系统整合在企业级的信息应用框架下,并且能为企业提供实时、大容量的信息通信和实时控制、管理和分配消息传递的能力。它能大大提高整个网络和信息系统的使用效率,还能为企业节省可观的整合费用。主要优势体现在如下方面:

(1)降低了集成难度。由于服务和特定的实现技术无关,集成工作将不需要大量的具备专业技术的开发人员参与,降低了开发成本。

  (2)这样一个架构带给系统很高的灵活性,当某一个业务服务的服务端点发生变化的时候,与之相关的其他系统不需要在各自的代码中修改。只要在ESB中修改端点映射即可。

  (3)提高了应用的可重用性,当出现一个新的业务,需要开发新的系统的时候,可以充分利用系统中已存在的业务功能而无需重新开发。

  (4)ESB作为一个中心,可以更好的管理和监视系统的运行状况,为管理人员提供一个统一的管理平台。

3. 常用的ESB产品有哪些?各自有什么特点?

Oracle Service Bus

Service Bus的前身是BEAAquaLogic Service BusBEA AquaLogic产品家族交付了最全面的服务基础架构产品线,可以帮助企业成功部署SOA。作为首款完全针对SOA而构建的产品套件,它为IT提供了一组统一的产品来处理消息传递、服务管理、数据一致和安全需要。

IBM WebSphere ESB

IBM 提供了三种 ESB 产品:IBM WebSphere ESBIBM WebSphere Message BrokerIBM WebSphere DataPower Integration Appliance XI50。根据您的需求选择 ESB 来增强您的 SOAWebSphere ESB 是一种基于平台的 ESB,作为集成的 SOA 平台,针对 WebSphere应用服务器进行了优化。WebSphere Message Broker 是跨平台的 ESB,是为异构 IT 环境中的统一连接和转换而构建的。WebSphere DataPower Integration Appliance XI50 是一种基于设备的 ESB,是为简化的部署和更强的安全性而构建的。客户面临着从简单到复杂的各式各样的 ESB 需求。

Microsoft ESB

微软通过其应用平台提供了全面的ESB服务,包括:Windows Server®2003,.NET Framework, BizTalk®Server 2008 R2. 应用平台提供了一个基础架构,基于此可以灵活和安全地重复使用架构和商业服务,并具有协调原有的服务整合到新的端到端的业务流程中的能力。

JBOSS SOA Platform

JBoss Enterprise SOA Platform提供了一个基于标准的平台,用以集成应用、SOA服务、业务事件和自动化业务流程。这一SOA平台集成了特定版本的JBoss ESBjBPMDrools、和已得到验证的JBoss企业应用平台,把它们组织在一起形成一个单一的企业级发布。

ServiceMix

ServiceMix是一个建立在JBI (JSR 208)语法规则和APIs上的开源ESB(Enterprise Service Bus:企业服务总线)项目。ServiceMix是基于JBIESB。它是开源的基于JBI语义和APIESBSOA工具包,以Apache许可证方式发布。
它是轻量的ESB实现,易于作为嵌入式ESB使用;集成了对Spring技术的支持;可以在客户端或服务器端运行;可以作为独立的ESB提供者,也可以作为另外ESB的服务组件; 可以在JavaSEJavaEE服务器中使用;ServiceMixApache Geronimo以及JBoss服务器完全集成,并且在Apache Geronimo服务器中可以直接部署JBI组件和服务。Java Business Integration (JBI,Java业务集成)技术规范定义了SOA的服务导向集成的内核和组成架构。它对公共讯息路径架构、服务引擎与捆绑的插件程序接口,以及复合型服务描述机制等都进行了标准化,这样就将多种服务结合成为一个单一的可执行的和可审核的工作单元。JBIServiceMix关系图JBI并不是一个为开发者设计的一个接口,更准确的说它是在JBI容器里为集成商提供相互集成的一个体系和一系列的接口。所以人们能集合他们所需要的所有部分,做出一个总体解决。例如在理论你能从BPEL引擎上,EJB容器上或者是数据传输产品上集合一个基础设施,并且能够集成的很合适。 ServiceMix 中包含完整的JBI容器,支持JBI规范的所有功能要求:l 规范化消息服务和路由 l JBI管理Beans (MBeans)l 组件管理和安装的Ant任务l JBI部署单元的完全支持,支持JBI组件的热部署

Mule ESB

Mule ESB是一种基于java的、轻量级的企业服务总线和集成平台,它允许开发者快速的、简单的连接应用,并能够实现数据的转换。

Mule ESB的主要功能如下:

服务的创建与管理(Service creation and hosting):用Mule ESB作为一个轻量级的服务容器来暴露和管理可重用的服务。

服务调解(Service mediation):隐藏服务消息的格式和协议,将业务逻辑从消息中独立出来,并可以实现本地独立的服务调用。

消息路由(Message routing):基于内容和规则的消息路由、消息过滤、消息合并和消息的重新排序。

数据转换(Data transformation):在不同的格式和传输协议中进行转换数据。

还没有评论!
23.20.129.162