
Traefik
Dynamic reverse proxy and load balancer for cloud-native microservices
- Stars
- 62,471
- License
- MIT
- Last commit
- 19 days ago
Proxy servers for web traffic, providing load balancing and SSL termination.
Reverse proxies act as intermediaries that receive client requests and forward them to backend servers, handling tasks such as SSL termination, caching, and request routing. When combined with load balancing, they distribute traffic across multiple instances to improve availability and performance. Open-source projects like Traefik, NGINX, HAProxy, and Zoraxy provide configurable platforms for these functions, while cloud providers offer managed SaaS alternatives. Organizations choose based on factors such as scale, operational overhead, and integration requirements.

Dynamic reverse proxy and load balancer for cloud-native microservices
Dynamic reverse proxy and load balancer for cloud-native microservices
Zoraxy is a Go‑based reverse proxy offering HTTP/2, WebSocket, TLS/SSL, load balancing, ACME automation, and a suite of network utilities for home labs and small‑scale deployments.
Assess the proxy's ability to handle concurrent connections, latency overhead, and support for protocols like HTTP/2 and gRPC.
Look for built-in clustering, active-passive failover, and support for horizontal scaling across nodes or containers.
Evaluate SSL/TLS termination, support for modern cipher suites, rate limiting, and integration with authentication providers.
Consider declarative configuration formats (YAML, JSON), dynamic reloading, and compatibility with service-discovery tools.
Review the size of the contributor base, documentation quality, plugin ecosystems, and availability of commercial support.
Most tools in this category support these baseline capabilities.
Managed load balancer service that automatically distributes incoming traffic across multiple targets to improve availability
Fully managed layer-4 load balancing service for distributing network traffic across multiple VMs or services in Azure
Edge load balancing with real-time health checks and failover.
Global, software-defined load balancing across L4–L7.
Highly available L4–L7 load balancing for IBM Cloud apps.
Elastic Load Balancing (ELB) is an AWS service that automatically distributes incoming application traffic across multiple targets (such as EC2 instances, containers, or IPs) in one or more availability zones. It improves fault tolerance and scalability by balancing load and health-checking targets, offering different types (Application, Network, Gateway) to handle varying traffic patterns while offloading TLS/SSL and providing high availability.
Frequently replaced when teams want private deployments and lower TCO.
Terminate encrypted connections at the proxy to offload cryptographic work from backend services and simplify certificate management.
Expose a single entry point for microservices, applying routing rules, request transformation, and authentication centrally.
Route a percentage of traffic to new service versions for testing while keeping the majority on the stable release.
Detect abnormal traffic patterns and enforce request quotas to protect backend resources.
Automatically discover services from Kubernetes, Docker Swarm, or Nomad and update routing tables without manual intervention.
What is the difference between a reverse proxy and a load balancer?
A reverse proxy forwards client requests to one or more backend servers, often adding features like caching or SSL termination. A load balancer specifically distributes traffic across multiple servers to improve capacity and resilience; many modern reverse proxies include load-balancing capabilities.
When should I choose an open-source solution over a managed SaaS load balancer?
Open-source proxies are suitable when you need full control over configuration, want to run the service on-premises, or have cost constraints. Managed SaaS options reduce operational overhead, provide built-in scaling, and integrate tightly with the provider's cloud services.
How does SSL termination work in a reverse proxy?
The proxy terminates the TLS handshake, decrypts incoming traffic, and forwards the request to backends over plain HTTP or re-encrypts it. This offloads cryptographic processing from the application servers and centralizes certificate management.
What load-balancing algorithms are commonly available?
Typical algorithms include round-robin, least-connections, IP-hash, weighted round-robin, and custom health-aware routing. Choice depends on traffic patterns and backend resource characteristics.
How are health checks performed?
Proxies periodically send probes (HTTP, TCP, or custom scripts) to each backend. Based on response status or latency, the proxy marks the instance healthy or unhealthy and adjusts routing accordingly.
Can reverse proxies integrate with Kubernetes?
Yes, many open-source proxies (e.g., Traefik, NGINX Ingress Controller) watch the Kubernetes API for service and ingress resources, automatically updating routing rules as pods are added or removed.