Need advice about which tool to choose?Ask the StackShare community!

Envoy

291
536
+ 1
9
Traefik

826
1.2K
+ 1
93
Add tool

Envoy vs Traefik: What are the differences?

Envoy is a high-performance proxy developed by Lyft, while Traefik is a modern reverse proxy and load balancer designed for microservices architectures. Let's explore the key differences between them.

  1. Flexibility and Extensibility: Envoy is known for its high degree of flexibility and extensibility. It offers a comprehensive set of APIs that allows developers to customize and control every aspect of its behavior, including filters, network policies, and load balancing algorithms. On the other hand, Traefik focuses on simplicity and ease of use, providing a streamlined configuration process with fewer customization options.

  2. Service Discovery: Envoy has built-in support for several service discovery mechanisms, such as static configuration, DNS-based service discovery, and integration with service mesh tools like Istio. It offers advanced features like automatic circuit breaking and retry mechanisms, making it ideal for complex microservices architectures. Traefik, while also supporting static configuration and DNS-based service discovery, lacks some of the advanced service mesh capabilities provided by Envoy.

  3. Load Balancing Strategies: Envoy offers a wide range of load balancing algorithms, including round-robin, least connection, and consistent hash-based load balancing. It also supports advanced features like traffic shifting and canary deployments. Traefik, on the other hand, provides a more limited set of load balancing strategies, focusing on simplicity rather than the ability to handle complex scenarios.

  4. TLS Termination: Envoy is highly capable when it comes to TLS termination, supporting various protocols, cipher suites, and certificate management options. It offers advanced features like automatic certificate rotation and supports multiple SSL/TLS termination points. Traefik, while also supporting TLS termination, provides a simpler and less configurable approach with fewer options for fine-grained control.

  5. Support for Protocols: Envoy offers comprehensive protocol support, including HTTP/1.1, HTTP/2, gRPC, and WebSocket. It handles protocol-specific optimizations, such as HTTP/2 multiplexing and gRPC load balancing. Traefik focuses primarily on HTTP-based protocols, with built-in support for HTTP/1.1 and HTTP/2, but lacks the same level of protocol coverage as Envoy.

  6. Community and Adoption: Both Envoy and Traefik have a growing community of users and contributors. However, Envoy has gained significant traction across large-scale enterprises and cloud-native ecosystems, making it a popular choice for complex and demanding environments. Traefik, on the other hand, has a strong presence in the container orchestration space and is often used as the default ingress controller in Kubernetes setups.

In summary, Envoy shines in its flexibility, service mesh capabilities, and extensive protocol support, while Traefik emphasizes simplicity, ease of use, and close integration with container orchestration platforms.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Envoy
Pros of Traefik
  • 9
    GRPC-Web
  • 20
    Kubernetes integration
  • 18
    Watch service discovery updates
  • 14
    Letsencrypt support
  • 13
    Swarm integration
  • 12
    Several backends
  • 6
    Ready-to-use dashboard
  • 4
    Easy setup
  • 4
    Rancher integration
  • 1
    Mesos integration
  • 1
    Mantl integration

Sign up to add or upvote prosMake informed product decisions

Cons of Envoy
Cons of Traefik
    Be the first to leave a con
    • 7
      Not very performant (fast)
    • 7
      Complicated setup

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -

    What is Envoy?

    Originally built at Lyft, Envoy is a high performance C++ distributed proxy designed for single services and applications, as well as a communication bus and “universal data plane” designed for large microservice “service mesh” architectures.

    What is Traefik?

    A modern HTTP reverse proxy and load balancer that makes deploying microservices easy. Traefik integrates with your existing infrastructure components and configures itself automatically and dynamically.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Envoy?
    What companies use Traefik?
    See which teams inside your own company are using Envoy or Traefik.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Envoy?
    What tools integrate with Traefik?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    May 6 2020 at 6:34AM

    Pinterest

    JavaScriptC++Varnish+6
    5
    3362
    What are some alternatives to Envoy and Traefik?
    Istio
    Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes, Mesos, etc.
    NGINX
    nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. According to Netcraft nginx served or proxied 30.46% of the top million busiest sites in Jan 2018.
    linkerd
    linkerd is an out-of-process network stack for microservices. It functions as a transparent RPC proxy, handling everything needed to make inter-service RPC safe and sane--including load-balancing, service discovery, instrumentation, and routing.
    Trailblazer
    Trailblazer is a thin layer on top of Rails. It gently enforces encapsulation, an intuitive code structure and gives you an object-oriented architecture. In a nutshell: Trailblazer makes you write logicless models that purely act as data objects, don't contain callbacks, nested attributes, validations or domain logic. It removes bulky controllers and strong_parameters by supplying additional layers to hold that code and completely replaces helpers.
    HAProxy
    HAProxy (High Availability Proxy) is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications.
    See all alternatives