现在的位置: 首页 > 云计算 > 正文

Envoy可以做什么

2020年01月01日 云计算 ⁄ 共 860字 ⁄ 字号 评论关闭

  Envoy是一种高性能C++分布式代理,专为单个服务和应用程序设计。作为ServiceMesh中的重要组件,充分理解其配置就显得尤为重要。本文列出了使用Envoy而不用其他代理的原因。并给出了Envoy及其服务的配置,然后对其进行详细解读,帮助读者理解其配置,从而掌握Envoy。

服务网格设置通信层

  服务网格是微服务设置中的通信层,也就是说往返于每个服务的所有请求都通过网格。服务网格在微服务设置中也成为基础架构层,它能够让服务之间的通信变得安全可靠。关于ServiceMesh的基础内容,我们已经在这篇文章中详细介绍过。

  每一个服务都有自己的代理服务(sidecars),然后所有代理服务一起形成服务网格。Sidecars处理服务之间的通信,也就是说所有的流量都会通过网格并且该透明层可以控制服务之间如何交互。

  服务网格通过由API控制的组件提供可观察性、服务发现以及负载均衡等。

  实际上,如果一个服务要调用另一个服务,它不会直接调用目标服务。而是先将请求路由到本地代理,然后代理再将该请求路由到目标服务。这一过程意味着服务实例不会和其他服务直接接触,仅与本地代理进行通信。

服务网格无需共享资源

  根据ThoughtWorksTechnologyRadar(这是一份半年度的文档,用于评估现有技术和新生技术的风险和收益)指出,“服务网格提供一致的发现、安全性、跟踪(tracing)、监控以及故障处理,而无需共享资源(如API网关或ESB)。一个十分典型的用例是轻量的反向代理进程会与每个服务进程或单独的容器一起部署。”

  当谈到服务网格时,不可避免谈到的是“sidecar”——可用于每个服务实例的代理。每个sidecar负责管理一个服务的一个实例。我们将在本文中进一步详细讨论sidecar。

  当前,越来越多的企业和组织开始转向微服务架构。这样的企业需要服务网格所提供的上述功能。解耦库的使用或自定义代码的方法无疑是赢家。

  结束语:以上就是关于Envoy可以做什么的全部内容,更多内容请关注学步园。

抱歉!评论已关闭.