7

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

据我了解,企业服务总线用于集成服务,以便任何其他应用程序都可以使用和调用或集成。Web 服务是企业服务总线中使用的一种方式。

4

2 回答 2

5

首先,一些通用术语:

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

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

那么Service和ESB有什么区别呢?

服务“活”在 ESB 上。它们通常代表特定的功能上下文 - 例如客户、订单的业务上下文。因此,如果您需要获取客户信息,您无需直接访问 CRM 应用程序,而是向提供此功能的 ESB 服务发送请求。因此,您无需了解有关 CRM 本身的任何信息。

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

  • 路由机制
  • 不同协议的连接器和桥接器
  • 不同事件的监听器
  • 实现不同通信模型的方法
  • 数据和模型转换手段
  • 异步排队
  • 监控、记录
  • 政策集中
  • 等等

使用中间件大大减少了系统之间点对点连接的数量,同时也带来了更好的隔离性和低耦合度,这意味着当您需要实施变更、切换供应商等时更加敏捷。

有关我建议的服务的更多信息,请参阅这篇文章。整个网站都很棒,您可能想探索它。此外,您可以将 ESB 表示为复合 SOA 设计模式,这可能对您有所帮助。

于 2016-11-27T11:30:22.947 回答
0

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


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

于 2016-11-30T12:06:59.947 回答