Pau*_*son 21 rest soa esb ibm-api-management
ESB是SOA解决方案中用于路由,消息转换,协议桥接等的传统中间件.现在,几家供应商提供了一种名为API Gateway的新型中间件解决方案.这些解决方案通常被描述为访问组织公开提供的REST和SOAP服务的中心点.但是,API网关解决方案似乎提供了典型ESB功能的子集.
那么,ESB和API网关之间有什么区别?我什么时候应该使用其中一种?
Fra*_*nia 13
API 网关是为客户端提供的代理。无论内部系统发生任何变化,网关都为客户端提供一致的接口。它允许内部系统在不影响客户端的情况下进行更改。API 网关还可以提供一致的横切关注点,例如安全日志记录、报告和 API 分析。
ESB(企业服务总线)提供了一种服务到服务通信的方式。使用这种技术,服务之间不需要相互通信,减少了耦合。ESB 通常使用有保证的消息传递进行服务间通信。
今天,Service Mesh 模式已经成为微服务的流行。Service Mesh 实现可以提供 API 网关和服务到服务通信,以及负载平衡、安全性和许多其他功能。
有很多变化和实现细节,但这是高层差异。
API网关通常充当Web服务的代理并提供有趣的价值,例如:日志记录,使SOAP服务可调用,如REST服务,调试帮助,跟踪等...因为API网关位于消费者和您的服务,它可以轻松捕获流量并做这些事情.
企业服务总线(如nServiceBus)被设计为位于消息传递协议(如RabbitMQ)之上,以便为其提供基本消息传递或pub-sub不具备的功能(或难以实现的功能),例如:数据库存储持久消息,重试逻辑,侦听器封装,订阅消息的简单方法和传奇.您可以在不使用ESB的情况下使用消息传递协议,但不能使用其他方式.例如,您可以在不使用nServiceBus的情况下使用RabbitMQ.
两者都可以执行服务的中介和聚合。主要区别在于API网关暴露了一组服务来消费,并负责代理服务的一些其他功能;比如限速。
另一方面,ESB 提供双向关系,因此提供者和消费者(服务)都可以参与以获得所需的结果。换句话说,ESB 允许计算实体既是服务又是运行中的消费者。API 网关将服务限制为具有单一行为。
| 归档时间: |
|
| 查看次数: |
20131 次 |
| 最近记录: |