【问题标题】:Where envoy Istio fits in to microservice applicationenvoy Istio 适合微服务应用程序的地方
【发布时间】:2019-09-06 12:42:34
【问题描述】:

我试图了解微服务架构的全貌。我在 java 上工作,所以使用 spring boot 应用程序。 据我了解,spring 与服务发现、zuul api Gateway、hystrix 和其他模块等 Netflix 模块有很好的集成。但是,对于在任何云提供商中部署为容器并使用 Kubernetes 进行编排的生产应用程序,我可以看到他们使用 envoy 和 Istio 来实现弹性负载平衡和其他任务。

我不明白 Istio 和 envoy 适合这里而不是 Netflix oss 模块

【问题讨论】:

  • 嗨,欢迎来到 SO。 SO主要是针对programming相关的问题。这是一个编程问题吗?您是否有可以分享并指出问题的现有代码?

标签: java kubernetes microservices istio envoyproxy


【解决方案1】:

Istio 适合微服务,因为它使您能够将不同框架和语言以不同方式完成的类似实现(重试、断路器、日志记录、跟踪等)抽象到 sidecar 容器中。

微服务架构的一个核心原则是“我们应该让我们的团队选择他们认为适合每个组件的用例的技术堆栈(语言、框架、CI 等)”。但是,我们希望确保每个人都遵守横切关注点,例如重试、断路、日志记录、跟踪,这是跨越整个生态系统的规则。

跨工具的多样性有时会引入不同的行为(例如,用于重试的 Go 和 C# 库可能具有在对您很重要的小细节方面有所区别的库),而这正是 Istio 试图解决的问题。

它允许您编写可重复使用的 sidecar 容器来补充现有应用的现有行为,这样它们就不必担心横切问题,因为它们已经与您的第 5 层(服务网格)集成

PS:欢迎使用 Stackoverflow!

【讨论】:

    猜你喜欢
    • 2021-12-05
    • 2010-10-01
    • 2018-12-09
    • 2017-01-29
    • 2018-08-01
    • 2022-12-07
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    相关资源
    最近更新 更多