Skip to content

yangchuansheng/envoy-handbook

Repository files navigation

Envoy 中文指南 - 从入门到实践进阶手册 👋

Envoy 是专为大型现代 SOA(面向服务架构)架构设计的 L7 代理和通信总线,体积小,性能高,它通过一款单一的软件满足了我们的众多需求,而不需要我们去搭配一些工具混合使用。本指南包括了本人平时在使用 Envoy 时的参考指南和实践总结,形成一个系统化的参考指南以方便查阅。欢迎大家关注和添加完善内容。

Awesome Website Chat on Telegram


文档: 中文文档, 英文文档博客

加入组织: Telegram

👋 为什么选择 Envoy

非侵入架构

Envoy 是一个独立进程,设计为伴随每个应用程序服务运行。所有的 Envoy 形成一个透明的通信网格,每个应用程序发送消息到本地主机或从本地主机接收消息,不需要知道网络拓扑,对服务的实现语言也完全无感知,这种模式也被称为 Sidecar。

L3/L4/L7 架构

传统的网络代理,要么在 HTTP 层工作,要么在 TCP 层工作。Envoy 支持同时在 3/4 层和 7 层操作,以此应对这两种方法各自都有其实际限制的现实。

动态更新

与 Nginx 等代理的热加载不同,Envoy 可以通过 API 来实现其控制平面,控制平面可以集中服务发现,并通过 API 接口动态下发规则更新数据平面的配置,不需要重启数据平面的代理。

✅ Envoy 的特性

  • 非侵入的架构
  • 由 C++ 语言实现,拥有强大的定制化能力和优异的性能
  • L3/L4/L7 架构
  • 顶级 HTTP/2 支持
  • 服务发现和动态配置
  • gRPC 支持
  • 特殊协议支持
  • 可观测性

作者

👤 米开朗基杨

支持我

如果觉得这个项目对你有帮助,请给我一个 ⭐️ 吧!