Knowledge Base
Welcome to HAProxy’s extensive and ever-expanding knowledge base. Created by a team of experts including HAProxy’s Core Development Team; it covers a wide range of topics to help you achieve maximum potential.


Using HAProxy as an API Gateway, Part 6 [Security]
HAProxy acts as an API gateway in front of your application servers, providing cross-cutting security. Using HAProxy as an API Gateway, Part 1 [Introduction] Using HAProxy as an API Gateway, Part 2 [Authentication] Using HAProxy as an API Gateway, Part 3...
Using HAProxy as an API Gateway, Part 5 [Monetization]
Use HAProxy as an API gateway to enable API monetization. Using HAProxy as an API Gateway, Part 1 [Introduction] Using HAProxy as an API Gateway, Part 2 [Authentication] Using HAProxy as an API Gateway, Part 3 [Health Checks] Using HAProxy as an API Gateway, Part 4...
The HAProxy Enterprise WAF
The HAProxy Enterprise WAF with support for ModSecurity rulesets protects your web applications from sophisticated, Layer 7 threats left unhandled by network firewalls. Data breaches. Loss of consumer confidence. An endless cycle of companies being compromised....
Announcing HAProxy Kubernetes Ingress Controller 1.5
We've released version 1.5 of the HAProxy Kubernetes Ingress Controller. This version unlocks access to the raw HAProxy configuration language for power users to gain more control. You can also enable mutual TLS authentication between the ingress controller and...

Load Balancing/Routing
HAProxy Forwards Over 2 Million HTTP Requests per Second on a Single Arm-based AWS Graviton2 Instance
For the first time, a software load balancer exceeds 2-million RPS on a single Arm instance. A few weeks ago, while I was working on an HAProxy issue related to thread locking contention, I found myself running some tests on a server with an 8-core, 16-thread...
HAProxy Enterprise 2.3 and HAProxy 2.4 Support the Financial Information eXchange Protocol (FIX)
A floor of commotion bustling with people holding phones and shouting out purchase and sell orders, some using hand signals to communicate over the noise. This was a common scene on Wall Street in the 1980s. Nowadays, transactions happen at the push of a button with...
Using HAProxy as an API Gateway, Part 6 [Security]
HAProxy acts as an API gateway in front of your application servers, providing cross-cutting security. Using HAProxy as an API Gateway, Part 1 [Introduction] Using HAProxy as an API Gateway, Part 2 [Authentication] Using HAProxy as an API Gateway, Part 3...
[On-Demand Webinar] HAProxy Skills Lab: Diagnosing Simple Problems
If you prefer joining the same webinar in French, register here. Troubleshooting network issues can seem like an arcane art. Operations teams build up knowledge through trial-and-error, online forums, and wisdom handed down from one generation to another. However, the...

SSL
Announcing HAProxy Data Plane API 2.2
The HAProxy Data Plane API 2.2 lays the foundation for first-class service discovery and introduces native support for Consul. It also adds storage and file handling for SSL certificates, Map files, and SPOE configuration files. Watch our on-demand webinar "What’s New...
Route SSH Connections with HAProxy
Route SSH connections through HAProxy using the SSH ProxyCommand feature and SNI. Watch our on-demand webinar in French "How to Route SSH Connections with HAProxy". Did you know that you can proxy SSH connections through HAProxy and route based on hostname? The...
[On-demand Webinar] Achieving FIPS 140-2 Encryption Compliance with HAProxy Enterprise on Red Hat Enterprise Linux
Encryption is an important facet of cybersecurity. It involves scrambling messages so that they can not be read by unauthorized parties in order to protect private information, which is particularly important when sending data across an untrusted network or the...
Redirect HTTP to HTTPS with HAProxy
Use the HAProxy load balancer to redirect users from HTTP to HTTPS automatically. For decades, our lives have become increasingly dependent on sending and receiving data from across the Internet. Now, with more people working, studying, and hanging with friends...

Microservices
Power Your Consul Service Mesh with HAProxy
Many of you use HashiCorp Consul for service discovery. It makes connecting one backend application or service to another easy: Your Consul servers store a catalog of addresses to all of your services; when an application within the network wants to discover where a...
Circuit Breaking in HAProxy
With HAProxy, you can implement a circuit breaker to protect services from widespread failure. Martin Fowler, who is famous for being one of the Gang of Four authors who wrote Design Patterns: Elements of Reusable Object-Oriented Software, hosts a website where...
Accelerate Your APIs by Using the HAProxy Cache
HAProxy's cache helps boost API performance by serving saved messages to your users. The age of rendering most of a web page's contents on the server and then delivering it as a colossal HTML file is fading into the past. Modern web frameworks like Angular, React, and...
Dissecting the HAProxy Kubernetes Ingress Controller
The new HAProxy Kubernetes Ingress Controller provides a high-performance ingress for your Kubernetes-hosted applications. Register for the on-demand webinar "The HAProxy Kubernetes Ingress Controller for High-Performance Ingress". Containers allow cross-functional...

Performance
Protect Servers with HAProxy Connection Limits and Queues
HAProxy connection limits and queues can help protect your servers and boost throughput when load balancing heavy amounts of traffic. When you use HAProxy as an API gateway in front of your services, it has the ability to protect those servers from traffic...
Announcing HAProxy Kubernetes Ingress Controller 1.5
We've released version 1.5 of the HAProxy Kubernetes Ingress Controller. This version unlocks access to the raw HAProxy configuration language for power users to gain more control. You can also enable mutual TLS authentication between the ingress controller and...
HTTP Keep-Alive, Pipelining, Multiplexing and Connection Pooling
Persistent connections allow HAProxy to optimize resource usage, lower latency on both the client and server side, and support connection pooling. HTTP is a layer 7 protocol that's transmitted over a TCP connection. It works in a client-server model and follows...
Accelerate Your APIs by Using the HAProxy Cache
HAProxy's cache helps boost API performance by serving saved messages to your users. The age of rendering most of a web page's contents on the server and then delivering it as a colossal HTML file is fading into the past. Modern web frameworks like Angular, React, and...

Webinars
[On-Demand Webinar] HAProxy Skills Lab: Diagnosing Simple Problems
If you prefer joining the same webinar in French, register here. Troubleshooting network issues can seem like an arcane art. Operations teams build up knowledge through trial-and-error, online forums, and wisdom handed down from one generation to another. However, the...
[On-Demand Webinar] Introduction to HAProxy
Want to continue learning? Register for our live webinar: HAProxy Skills Lab: Diagnosing Simple Problems. If you prefer watching this webinar in French click here. Are you new to using the HAProxy? Are you new to load balancing in general? In this webinar, you will...
[On-Demand Webinar] What’s New in the HAProxy Data Plane API 2.2
The HAProxy Data Plane API enables remote, dynamic configuration of your HAProxy load balancers. Version 2.2 lays the foundation for first-class service discovery and introduces native support for Consul. Consul is a popular service discovery platform. You can now...
[On-Demand Webinar] HAProxy 2.3 Feature Roundup
If you prefer watching the webinar in French, Baptiste Assmann hosted this webinar in French and it is available to watch on-demand as well. You can register here. HAProxy celebrates the release of version 2.3! As a technical release, this version of HAProxy optimizes...

Basics
[On-Demand Webinar] HAProxy Skills Lab: Diagnosing Simple Problems
If you prefer joining the same webinar in French, register here. Troubleshooting network issues can seem like an arcane art. Operations teams build up knowledge through trial-and-error, online forums, and wisdom handed down from one generation to another. However, the...
[On-Demand Webinar] Introduction to HAProxy
Want to continue learning? Register for our live webinar: HAProxy Skills Lab: Diagnosing Simple Problems. If you prefer watching this webinar in French click here. Are you new to using the HAProxy? Are you new to load balancing in general? In this webinar, you will...
How to Map Domain Names to Backend Server Pools with HAProxy
Your HAProxy load balancer may only ever need to relay traffic for a single domain name, but HAProxy can handle two, ten, or even ten million routing rules without breaking a sweat. This article shows several ways of handling multi-domain configurations, including an...
[On-Demand Webinar] HAProxy 2.3 Feature Roundup
If you prefer watching the webinar in French, Baptiste Assmann hosted this webinar in French and it is available to watch on-demand as well. You can register here. HAProxy celebrates the release of version 2.3! As a technical release, this version of HAProxy optimizes...

Benchmarking
HAProxy Forwards Over 2 Million HTTP Requests per Second on a Single Arm-based AWS Graviton2 Instance
For the first time, a software load balancer exceeds 2-million RPS on a single Arm instance. A few weeks ago, while I was working on an HAProxy issue related to thread locking contention, I found myself running some tests on a server with an 8-core, 16-thread...
Test Driving “Power of Two Random Choices” Load Balancing
The Power of Two Random Choices load-balancing algorithm has piqued some curiosity. In this blog post, we see how it stacks up against other modern-day algorithms available in HAProxy. Recently, I was asked twice about my opinion on supporting an algorithm known as...
Hypervisors Virtual Network Performance Comparison from a Virtualized Load Balancer Point of View
Introduction At HAProxy Technologies, we edit and sell a Load-Balancer appliance called ALOHA (stands for Application Layer Optimisation and High-Availability). A few month ago, we managed to make it run on the most common hypervisors available: VMWare (ESX, vsphere)...
Benchmarking SSL Performance
Introduction The story Recently, there has been some attacks against website which aimed to steal user identity. In order to protect their users, major website owners had to find a solution. Unfortunately, we know that sometimes, improving security means downgrading...

Random Tips
Serve Dynamic Custom Error Pages with HAProxy
Set up custom error pages in HAProxy to ensure consistent, branded messaging that supports any backend web stack. The memory is probably still fresh: You're shopping online at your favorite website, looking for something specific, you've got it narrowed down to two or...
[Conference Presentation] Dynamic Application Routing Over SSL with HAProxy Enterprise
Back in May, HAProxy Senior Systems Engineer Chad Lavoie presented at the OpenStack Summit Boston. Chad presented on using maps in HAProxy to dynamically route requests while securing your site with SSL combined with the use of the Update Module (included in HAProxy...
HAProxy and HTTP Errors 408 in Chrome
Lately, there was some discussions on HAProxy's mailing list about 408 errors printed in Chrome browsers. Origin of 408 errors 408 is the status code used by web servers or proxies when the client has not sent a whole HTTP request during a certain period of time. It...
Configure syslog-ng to Log Readable HTTP URL from HAProxy
These tips are provided by Exosec. Exosec provides a very good monitoring product called POM, based on Nagios with very strong value added such as very simple administration, application monitoring, etc... For some of their project, they use either HAProxy or the...

Observability
Logging with the HAProxy Kubernetes Ingress Controller
The HAProxy Kubernetes Ingress Controller publishes two sets of logs: the ingress controller logs and the HAProxy access logs. After you install the HAProxy Kubernetes Ingress Controller, logging jumps to mind as one of the first features to configure. Logs...
Using HAProxy as an API Gateway, Part 4 [Metrics]
HAProxy publishes more than 100 metrics about the traffic flowing through it. When you use HAProxy as an API gateway, these give you insight into how clients are accessing your APIs. Several metrics come to mind as particularly useful, since they can help you...
HAProxy Log Sampling
Log Sampling is a powerful feature introduced in HAProxy 2.0 that lets you define a percentage of your logs to create a representative view of your data allowing you to minimize your costs. Log files are the key to observability. They can provide helpful information...
Tracing Requests Through HAProxy with AWS X-Ray
HAProxy integrates with AWS X-Ray to give you the best observability across your Amazon Web Services (AWS) resources, including your load balancer. Read on to learn how. There is a trend to move away from monolithic applications towards microservices. Microservices...

DevOps
[On-Demand Webinar] HAProxy Skills Lab: Diagnosing Simple Problems
If you prefer joining the same webinar in French, register here. Troubleshooting network issues can seem like an arcane art. Operations teams build up knowledge through trial-and-error, online forums, and wisdom handed down from one generation to another. However, the...
[On-Demand Webinar] Learn the HAProxy Data Plane API 2.0
People know HAProxy as the high-performance software load balancer that they can configure once, then trust to do the job, but it's also the best choice for dynamic environments where change is constant. For instance, HAProxy's configuration can be generated on the...
Announcing HAProxy Data Plane API 2.0
Find out more by registering for our webinar: “Learn the HAProxy Data Plane API 2.0“ Version 2.0 of the HAProxy Data Plane API brings some exciting enhancements that unlock the power of HAProxy's flexible configuration and its runtime capabilities. The HAProxy Data...
Programmatic HAProxy Configuration Using the Data Plane API
In his HAProxyConf 2019 presentation, Chad Lavoie (Director of Support, HAProxy Technologies) describes how to get started and how to build tools that integrate with the API. He demonstrates how to configure a frontend and backend in HAProxy, and then how to modify a...

Kubernetes
Power Your Consul Service Mesh with HAProxy
Many of you use HashiCorp Consul for service discovery. It makes connecting one backend application or service to another easy: Your Consul servers store a catalog of addresses to all of your services; when an application within the network wants to discover where a...
Logging with the HAProxy Kubernetes Ingress Controller
The HAProxy Kubernetes Ingress Controller publishes two sets of logs: the ingress controller logs and the HAProxy access logs. After you install the HAProxy Kubernetes Ingress Controller, logging jumps to mind as one of the first features to configure. Logs...
Announcing HAProxy Kubernetes Ingress Controller 1.5
We've released version 1.5 of the HAProxy Kubernetes Ingress Controller. This version unlocks access to the raw HAProxy configuration language for power users to gain more control. You can also enable mutual TLS authentication between the ingress controller and...
vSphere 7 with Tanzu Integrates with HAProxy for Load Balancing Enterprise-grade Kubernetes
VMware chose HAProxy as the default load balancer for Tanzu Kubernetes clusters, which helped streamline load balancing in their Kubernetes platform. VMware has delivered vSphere 7 with Tanzu, its endeavor to embed an enterprise-grade version of Kubernetes inside...

Service Discovery
Power Your Consul Service Mesh with HAProxy
Many of you use HashiCorp Consul for service discovery. It makes connecting one backend application or service to another easy: Your Consul servers store a catalog of addresses to all of your services; when an application within the network wants to discover where a...
Announcing HAProxy Data Plane API 2.2
The HAProxy Data Plane API 2.2 lays the foundation for first-class service discovery and introduces native support for Consul. It also adds storage and file handling for SSL certificates, Map files, and SPOE configuration files. Watch our on-demand webinar "What’s New...
HAProxy on Docker Swarm: Load Balancing and DNS Service Discovery
Use HAProxy to add routing, load balancing, and DNS service discovery to Docker Swarm. Docker Swarm lets you expand beyond hosting Docker containers on a single machine. It oversees a cluster of servers and manages which to deploy a container to, depending on each...
DNS for Service Discovery in HAProxy
HAProxy 1.8 and newer allows you to use DNS service discovery to detect server changes and automatically apply them to your configuration. HAProxy is a mature, high-performance software component that’s been reliably serving the load balancing and ADC markets for over...

Cloud
HAProxy Enterprise Offers SAML-based Single Sign-on
HAProxy Enterprise handles SAML single sign-on for your applications and integrates with identity providers like Azure Active Directory. Single sign-on (SSO) is such a familiar convenience for companies that it's easy to forget how powerful it is. When employees...
Building Blocks of a Modern Proxy
A major outcome of IT/Ops evolution is realizing the importance of a reverse proxy, such as HAProxy, in achieving modern application delivery. This is the first post in a series about HAProxy's role in building a modern systems architecture that relies on cloud-native...
[On-Demand Webinar] HAProxy Data Plane API: True Dynamic Configuration Management
Integrating HAProxy into automation tools, continuous-delivery pipelines, and service meshes just got a lot easier. We’ve introduced a new REST API that you can use to configure HAProxy fully at runtime and it’s called the Data Plane API. Tune into this webinar to...
Tracing Requests Through HAProxy with AWS X-Ray
HAProxy integrates with AWS X-Ray to give you the best observability across your Amazon Web Services (AWS) resources, including your load balancer. Read on to learn how. There is a trend to move away from monolithic applications towards microservices. Microservices...

LUA
Enabling CORS in HAProxy
The HAProxy Cross-Origin Resource Sharing (CORS) Lua module streamlines adding CORS to your APIs. What is CORS? Read on to learn more.It doesn't matter whether you're using Angular, React, Vue or simple, vanilla JavaScript. You're guaranteed to need to fetch or...
5 Ways to Extend HAProxy with Lua
Use Lua to add fetches, converters, actions, services and tasks to HAProxy. Did you know that HAProxy embeds the Lua scripting language, which you can use to add new functionality? HAProxy features an extremely powerful and flexible configuration language and gives...
Let’s Encrypt (ACMEv2) for HAProxy
HAProxy Technologies is proud to announce the availability of an integrated Let’s Encrypt ACMEv2 Lua client for HAProxy and HAProxy Enterprise (HAPEE). HAProxy Enterprise comes bundled with Lua support in a precompiled binary conveniently distributed using your Linux...
HAProxy 1.6-Dev1 and LUA
HAProxy 1.6-dev1 Yesterday, Willy has released HAProxy 1.6-dev1: ANNOUNCE HAProxy 1.6-dev1. This version contains many new features and core improvements. Amongst the new features, one is LUA, contributed by Thierry (HAProxy Technologies developer). NOTE: We invite...
Need More Assistance?
Contact the authoritative experts on HAProxy who will assist you in finding the solution that best fits your needs for deployment, scale, and security.