An Introduction to HAProxy and Load Balancing Concepts | DigitalOcean - 0 views
-
HAProxy, which stands for High Availability Proxy
-
improve the performance and reliability of a server environment by distributing the workload across multiple servers (e.g. web, application, database).
-
ACLs are used to test some condition and perform an action (e.g. select a server, or block a request) based on the test result.
- ...28 more annotations...
-
ACLs allows flexible network traffic forwarding based on a variety of factors like pattern-matching and the number of connections to a backend
-
adding more servers to your backend will increase your potential load capacity by spreading the load over multiple servers
-
use_backend rules, which define which backends to use depending on which ACL conditions are matched, and/or a default_backend rule that handles every other case
-
Generally, all of the servers in the web-backend should be serving identical content--otherwise the user might receive inconsistent content.
-
Using layer 7 allows the load balancer to forward requests to different backend servers based on the content of the user's request.
-
require that a user continues to connect to the same backend server. This persistence is achieved through sticky sessions, using the appsession parameter in the backend that requires it.
-
If a server fails a health check, and therefore is unable to serve requests, it is automatically disabled in the backend
-
For certain types of backends, like database servers in certain situations, the default health check is insufficient to determine whether a server is still healthy.
-
However, your load balancer is a single point of failure in these setups; if it goes down or gets overwhelmed with requests, it can cause high latency or downtime for your service.
-
If that load balancer fails, your failover mechanism will detect it and automatically reassign the IP address to one of the passive servers.