首页 > 解决方案 > Service Mesh(如 Istio)vs Even Driven 微服务架构

问题描述

嗨微服务大师,

我有一个关于微服务的服务到服务通信架构的问题。Istio 或任何服务网格都可以使微服务通信的路由、发现和弹性易于管理。但是,它没有涵盖跨越多个微服务(一种分布式事务)的事务的重要方面,这很好地包含在基于事件的微服务架构中。然而,显然,事件驱动架构错过了服务网格很好地涵盖的方面。所以,想知道哪种方法更好,或者有一种方法可以将两种服务网格与事件驱动架构相结合,以利用两种模式的优势。但如果这种混合是可能的,那么事件驱动总线(如 Kafka)不会干扰 Istio 使用的侧车代理/控制平面的内部工作模式。

标签: dockerkubernetescontainersmicroservicesistio

解决方案


你混淆了几件事。

  • Istio、linkerd 等解决了云原生、容器化微服务带来的一些基本设计/架构问题。例如服务发现、断路器等。过去使用嵌入在 Spring cloud、hystrix、ribbon 等应用程序中的库来解决这些问题。服务网格在容器世界的范式中解决了这个问题。

但是服务网格不能解决任何其他使用 Kafka 或任何其他消息代理解决的服务间数据交换问题。您的微服务可以是事件驱动的,也可以不是事件驱动的——服务网格不会干扰它。


推荐阅读