# envoyproxy/envoy

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/envoyproxy-envoy).**

27,630 stars · 5,252 forks · C++ · apache-2.0

## Links

- GitHub: https://github.com/envoyproxy/envoy
- Homepage: https://www.envoyproxy.io
- awesome-repositories: https://awesome-repositories.com/repository/envoyproxy-envoy.md

## Topics

`cars` `cats` `cats-over-dogs` `cncf` `corgis` `more-cats` `nanoservices` `rocket-ships`

## Description

Envoy is a high-performance, cloud-native service proxy designed for service-to-service communication in distributed architectures. It functions as a service mesh data plane, providing a centralized mechanism for managing, securing, and observing network traffic between microservices.

The project is distinguished by its ability to perform dynamic traffic management and configuration updates in real-time without requiring service restarts or downtime. It utilizes a non-blocking, event-driven architecture to handle high-concurrency connections and supports hot-restart process management, which maintains continuous service availability by transferring active connection sockets during binary or configuration updates.

The proxy offers a comprehensive suite of operational capabilities, including advanced traffic routing, load balancing, and upstream health checking to ensure reliable distribution of requests. It also features a pluggable filter chain and extensibility modules that allow for custom request processing logic, alongside integrated tools for traffic tapping, mirroring, and the enforcement of transport layer security.

Extensive observability is built into the core, enabling the collection and export of granular metrics, logs, and distributed traces to monitor system health and performance. Administrative utilities are provided to manage proxy lifecycles, monitor operational status, and perform configuration changes through a centralized control plane.

## Tags

### DevOps & Infrastructure

- [Service Mesh](https://awesome-repositories.com/f/devops-infrastructure/api-service-management/service-mesh.md) — Functions as a high-performance service mesh data plane for managing, securing, and observing inter-service communication.
- [Service Proxies](https://awesome-repositories.com/f/devops-infrastructure/service-proxies.md) — High-performance proxy designed for service-to-service communication providing advanced traffic management, observability, and security.
- [Cluster and Service Orchestration](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/cluster-service-orchestration.md) — Maintains a dynamic inventory of upstream service instances and performs continuous health checks to ensure reliable traffic distribution. ([source](https://www.envoyproxy.io/docs/envoy/v1.25.5/))

### Networking & Communication

- [Dynamic Configuration Managers](https://awesome-repositories.com/f/networking-communication/dynamic-configuration-managers.md) — Supports real-time updates to routing, load balancing, and security policies via a centralized control plane. ([source](https://www.envoyproxy.io/docs/envoy/v1.19.1/))
- [Network Traffic Management](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-routing-traffic-management/network-traffic-management.md) — Routes, balances, and secures network traffic in real-time without requiring service restarts or downtime.
- [Event-Driven Networking](https://awesome-repositories.com/f/networking-communication/event-driven-networking.md) — Utilizes a non-blocking event loop to handle high-concurrency network connections with minimal latency.
- [Dynamic Service Proxies](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-infrastructure/dynamic-service-proxies.md) — Updates routing, security, and load balancing policies in real-time without interrupting active network connections.
- [Dynamic Provider Discovery](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-systems-coordination/service-discovery-mechanisms/dynamic-provider-discovery.md) — Automates the discovery of service changes and updates routing tables in real-time via a centralized control plane.
- [Load Balancers](https://awesome-repositories.com/f/networking-communication/load-balancers.md) — Distributes incoming traffic across multiple upstream service instances using various algorithms to ensure high availability. ([source](https://www.envoyproxy.io/docs/envoy/v1.20.6/))
- [Network Traffic Analyzers](https://awesome-repositories.com/f/networking-communication/network-traffic-analyzers.md) — Captures, mirrors, and inspects raw network traffic flows to troubleshoot communication issues.
- [Proxy Scripting Extensions](https://awesome-repositories.com/f/networking-communication/proxy-scripting-extensions.md) — Allows integration of custom logic to modify request processing and add unique filtering capabilities. ([source](https://www.envoyproxy.io/docs/envoy/latest/))
- [Traffic Analysis Tools](https://awesome-repositories.com/f/networking-communication/traffic-analysis-tools.md) — Provides integrated tools for traffic tapping and mirroring to capture and inspect network flows for debugging and auditing. ([source](https://www.envoyproxy.io/docs/envoy/v1.19.5/))

### Security & Cryptography

- [Service Communication Security](https://awesome-repositories.com/f/security-cryptography/service-communication-security.md) — Enforces transport layer security and manages certificates to encrypt data and authenticate identities between services. ([source](https://www.envoyproxy.io/docs/envoy/v1.22.7/))

### Software Engineering & Architecture

- [Traffic Routing Engines](https://awesome-repositories.com/f/software-engineering-architecture/traffic-routing-engines.md) — Evaluates incoming requests against configurable rules to dynamically direct traffic to appropriate backend services. ([source](https://www.envoyproxy.io/docs/envoy/latest/))
- [Shared Memory Management](https://awesome-repositories.com/f/software-engineering-architecture/shared-memory-management.md) — Synchronizes internal proxy state and connection metadata across process boundaries to enable seamless restarts.

### System Administration & Monitoring

- [Distributed Observability Systems](https://awesome-repositories.com/f/system-administration-monitoring/distributed-observability-systems.md) — Collects and exports detailed metrics, logs, and distributed traces to monitor the health and performance of network traffic.
- [Monitoring and Observability](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability.md) — Collects and exports granular metrics, logs, and distributed traces to provide real-time visibility into system performance. ([source](https://www.envoyproxy.io/docs/envoy/latest/))
- [Distributed Observability Platforms](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/telemetry-collection-aggregation/distributed-observability-platforms.md) — Aggregates telemetry data from network interactions to provide real-time visibility into service health and performance.
- [Health Checks](https://awesome-repositories.com/f/system-administration-monitoring/health-checks.md) — Continuously monitors backend service availability to ensure reliable traffic distribution and load balancing.
- [Proxy Lifecycle Management](https://awesome-repositories.com/f/system-administration-monitoring/proxy-lifecycle-management.md) — Supports hot-restart process management and dynamic configuration updates to maintain continuous service availability. ([source](https://www.envoyproxy.io/docs/envoy/v1.23.0/))

### Web Development

- [Dynamic Routing](https://awesome-repositories.com/f/web-development/dynamic-routing.md) — Enables real-time updates to routing, cluster, and listener settings without requiring service restarts. ([source](https://www.envoyproxy.io/docs/envoy/v1.21.6/))
- [Request Handler Chains](https://awesome-repositories.com/f/web-development/request-handler-chains.md) — Executes custom logic modules in a sequential pipeline to inspect or modify request and response data.

### Part of an Awesome List

- [DevOps and Infrastructure](https://awesome-repositories.com/f/awesome-lists/devops/devops-and-infrastructure.md) — High-performance edge and service proxy.

### Development Tools & Productivity

- [Hot Reloading](https://awesome-repositories.com/f/development-tools-productivity/configuration-updates/hot-reloading.md) — Maintains continuous service availability by transferring active connection sockets during binary or configuration updates.
- [CLI Administration Tools](https://awesome-repositories.com/f/development-tools-productivity/cli-administration-tools.md) — Provides command-line utilities for monitoring status, updating configurations, and performing hot restarts. ([source](https://www.envoyproxy.io/docs/envoy/v1.26.3/))
