Dapr Vs Envoy - 何时使用什么?
微服务侧写的故事!
EnvoyProxy和Dapr作为一种框架,通过让开发人员专注于业务逻辑,使微服务的采用更加顺畅,因此获得了很多人的青睐。虽然Envoy和Dapr是为了解决不同的问题而建立的,但两者之间有一些明显的相似之处。
在这篇文章中,我将对这两个框架做一个简单的介绍,并建议它们的合适用法。
所以,让我们开始吧!
什么是EnvoyProxy?
Envoy是一个在Lyft创建的开源代理。随着世界向分布式微服务架构的发展,从业者们观察到在两个主要领域运行操作的困难。
- 网络
- 可观察性
Envoy试图通过使网络对应用程序更加透明来解决这些问题。它还提供了一种更好地收集统计数据的方法,以便更容易调试和追踪问题。
今天,Envoy代理的最常见的部署方式是作为一个副车与应用程序一起部署。
什么是Dapr?
Dapr是一个可移植的、事件驱动的运行时,使任何开发人员都能轻松地构建在云和边缘运行的有弹性、无状态和有状态的应用程序,并拥抱语言和开发人员框架的多样性。
它使你能够使用任何语言和任何框架构建基于微服务的应用,并在任何地方运行。
像EnvoyProxy一样,Dappr也被作为一个sidecar peroxy与应用程序一起部署。
你可以在Dunith Dhanushka的这篇文章中阅读更多关于Dapr的内容。
比较
以下是两者之间的比较 -
什么时候使用EnvoyProxy?
- Envoy Proxy主要关注于隔离网络和应用程序。它通过以平台无关的方式提供通用功能来抽象网络。
- 因此,如果你只想解决微服务架构中的网络问题,那么Envoy将是你的正确选择。
什么时候使用Dapr?
- Dapr专注于提供一个_最佳实践_的框架,将微服务应用构建成开放、独立的构建块,使你能够用你选择的语言和框架构建可移植的应用。
- 因此,如果你的重点是在你的应用程序中实现状态管理、秘密管理、消息队列等的可移植性,那么Dapr可能是你的正确选择。