Webservice和Enterprise Service Bus之间的区别

问题描述 投票:5回答:2

我想知道Webservice和Enterprise Service Bus(Ex-Mule)之间的区别。当我搜索它时,我没有从互联网上获得太多信息。

根据我的理解,Enterprise Service Bus用于集成Service,以便任何其他应用程序可以使用和调用或集成。 Web服务是Enterprise Service Bus中使用的方法之一。

web-services soa esb eai
2个回答
4
投票

首先,一些一般术语:

服务是可以从外部消费应用程序调用的公开功能的通用术语。大多数情况下,服务是由应用程序的集成层公开的。服务可以是Web服务 - 基于SOAP,REST等,因此WebService是使用SOAP的服务子类型。

将所有应用程序相互连接不能很好地扩展(通信渠道随着向环境添加越来越多的应用程序而呈指数级增长),从长远来看,这会导致昂贵的维护。这就是为什么我们使用中间件软件(ESB是一种中间件)作为暴露应用程序服务的唯一点。

那么Service和ESB有什么区别?

ESB上的“直播”服务。它们通常代表特定的功能上下文 - 例如客户,订单的业务环境。因此,如果您需要获取客户信息,则不直接转到CRM应用程序,而是向提供此功能的ESB服务发送请求。因此,您无需了解CRM本身。

ESB在实践中是一个中间件(如果您愿意,它是集成主干),它提供了轻松托管和实现服务的技术基础架构和工具,包括:

  • 路由机制
  • 不同协议的连接器和桥接器
  • 不同活动的听众
  • 意味着实现不同的通信模型
  • 数据和模型转换意味着
  • 异步排队
  • 监控,记录
  • 政策集中化
  • 等等

使用中间件可以大大减少系统之间点对点连接的数量,并且还可以实现更好的隔离和低级别的耦合,这意味着当您需要实现更改,在供应商之间切换等时更具灵活性。

有关服务的更多信息,我建议see this article。整个网站都很棒,您可能想要探索它。此外,你可以看到representation of ESB as compound SOA design pattern,,你可能会发现有用。


1
投票

Web服务是由电子设备提供给另一电子设备的服务,通过万维网彼此通信。 Web服务通常向数据库服务器提供面向对象的基于Web的接口,例如由另一个Web服务器或移动应用程序使用,该接口为最终用户提供用户界面。提供给最终用户的另一种常见应用可以是混搭。 Web服务可以使用SOAP over HTTP协议,与通过EDI / B2B等专有解决方案相比,可以在Internet上进行成本较低的交互。除了SOAP over HTTP之外,Web服务还可以在其他可靠的传输机制(如FTP)上实现。


企业服务总线(ESB)正在面向服务的体系结构(SOA)中的相互交互的软件应用程序之间实现通信系统。它实现了右侧所示的软件架构。由于它实现了分布式计算的软件体系结构,因此它实现了更通用的客户端 - 服务器模型的特殊变体。而一般而言,任何使用ESB的应用程序都可以轮流表现为服务器或客户端。 ESB提高了应用程序之间高协议级通信的灵活性和灵活性。

© www.soinside.com 2019 - 2024. All rights reserved.