什么是微服务上下文中的边车?

Posted

技术标签:

【中文标题】什么是微服务上下文中的边车?【英文标题】:What is a sidecar in the context of microservices? 【发布时间】:2018-02-01 12:29:27 【问题描述】:

我目前正在查看 Istio 和 Kubernetes 的谈话,并提到服务管理以及边车的使用。我不确定那是什么。

【问题讨论】:

【参考方案1】:

我认为它们是辅助容器。一个 pod 可以有 1 个或多个容器。一个容器应该只做一件事,比如 Web 服务器或负载均衡器。因此,如果您需要在 pod 内完成一些额外的工作,例如 github 同步或数据处理,您可以创建一个额外的容器 AKA sidecar。

【讨论】:

【参考方案2】:

我所知道的“Sidecar”模式的最佳(原始?)描述来自 Brendan Burns 和 David Oppenheimer 在他们关于“分布式系统的容器模式”的出版物中。 在这里查看论文+幻灯片: https://www.usenix.org/conference/hotcloud16/workshop-program/presentation/burns

还有其他设计模式,例如“大使”或“适配器”。我不确定 istio 实现是否真的是他们描述的 sidecar,但无论如何我认为这就是该术语的起源。

【讨论】:

我读过烧伤纸。我认为它做出了一些并不总是适用于边车的假设,因此得出了一些关于边车并不总是有效的结论。我觉得medium.com/netflix-techblog/… 更好地描述了何时、为什么以及如何实现和使用 sidecar。

以上是关于什么是微服务上下文中的边车?的主要内容,如果未能解决你的问题,请参考以下文章

什么是微信公众号

总结下微服务

Jenkinsfile管道:到达主机边车的ip

在我的RecyclerView元素中,最后一个元素上下的边距不正确。

什么是大型数据集上下文中的 RESTful 资源,即天气数据?

获取服务中的调用上下文