Envoy 与 Nginx 的差异与选择

结论先行

Envoy 是面向服务网格和动态配置的 L7 代理,支持 xDS、可观测性和熔断;Nginx 是成熟的 Web 服务器/反向代理,静态资源、生态和运维经验最广。服务网格/边缘动态代理优先 Envoy,传统 Web 与反代优先 Nginx。

核心差异

维度 Envoy Nginx
定位 L7 代理/服务网格 sidecar Web 服务器 + 反向代理
配置 xDS 动态下发,YAML/API 配置文件 + reload
服务发现 原生动态集群 需 upstream 更新/reload
可观测性 丰富指标、追踪、访问日志 日志/状态模块
熔断/重试 原生支持 需模块/配置
静态文件 不是重点 强项
生态 Istio、Emissary、Contour 等 最广的 Web 生态

怎么选

注意

envoy --mode validate -c envoy.yaml
nginx -t && nginx -s reload

相关命令