Envoy — high-performance L7 proxy, originally from Lyft (2016), CNCF graduated. Backbone of most popular service mesh implementations (Istio, AWS App Mesh, Consul Connect). C++ rewrite of all the best ideas from nginx/HAProxy. Features: HTTP/2, gRPC, WebSocket, advanced routing, circuit breakers, observability. Configuration via YAML + xDS API for dynamic config.
Below: details, example, related terms, FAQ.
Free online tool — HTTP header checker: instant results, no signup.
# Envoy listener config
listeners:
- address:
socket_address: { address: 0.0.0.0, port_value: 80 }
filter_chains:
- filters:
- name: envoy.filters.network.http_connection_manager
typed_config:
stat_prefix: ingress_http
route_config:
name: local_route
virtual_hosts:
- name: backend
domains: ["*"]
routes:
- match: { prefix: "/" }
route: { cluster: service_backend }When comparing Envoy to other popular proxy solutions like nginx and HAProxy, several key differences emerge that highlight Envoy's unique capabilities.
Firstly, Envoy is designed as a layer 7 proxy, which means it operates at the application layer of the OSI model, allowing for advanced features such as HTTP/2 and gRPC support. In contrast, while nginx and HAProxy can handle layer 7 traffic, they are traditionally optimized for layer 4, which may limit their capabilities in microservices environments.
Secondly, Envoy provides built-in service discovery and dynamic configuration through the xDS API. This allows it to adapt to changes in the service landscape without requiring a restart, unlike nginx and HAProxy, which typically rely on static configurations.
Furthermore, Envoy's advanced routing capabilities enable features like traffic shadowing, retries, and circuit breaking, enhancing resilience and observability. These features are essential for modern cloud-native applications that require high availability and performance.
In summary, while nginx and HAProxy are robust solutions for traditional web applications, Envoy's focus on microservices architecture, dynamic configuration, and advanced observability features make it a superior choice for contemporary cloud environments.
nginx: battle-tested, simple config, strong static file serving. Envoy: better for microservices (gRPC, dynamic config, mesh-ready).
Front proxy / API gateway (replaces nginx + HAProxy). Or edge proxy for Kubernetes ingress.
Yes. Envoy YAML verbose. In service mesh deploys, config is auto-generated by control plane.
Free plan — 10 monitors, checks every 5 min, no card required. Upgrade for 1-minute interval and multi-region monitoring.