4.4. Alternatives

  1. Linux Virtual Server (LVS or IPVS) is the layer 4 load balancer included within
  2. the Linux kernel. It works at the packet level and handles TCP and UDP. In most
  3. cases it's more a complement than an alternative since it doesn't have layer 7
  4. knowledge at all.
  5.  
  6. Pound is another well-known load balancer. It's much simpler and has much less
  7. features than HAProxy but for many very basic setups both can be used. Its
  8. author has always focused on code auditability first and wants to maintain the
  9. set of features low. Its thread-based architecture scales less well with high
  10. connection counts, but it's a good product.
  11.  
  12. Pen is a quite light load balancer. It supports SSL, maintains persistence using
  13. a fixed-size table of its clients' IP addresses. It supports a packet-oriented
  14. mode allowing it to support direct server return and UDP to some extents. It is
  15. meant for small loads (the persistence table only has 2048 entries).
  16.  
  17. NGINX can do some load balancing to some extents, though it's clearly not its
  18. primary function. Production traffic is used to detect server failures, the
  19. load balancing algorithms are more limited, and the stickiness is very limited.
  20. But it can make sense in some simple deployment scenarios where it is already
  21. present. The good thing is that since it integrates very well with HAProxy,
  22. there's nothing wrong with adding HAProxy later when its limits have been
  23. reached.
  24.  
  25. Varnish also does some load balancing of its backend servers and does support
  26. real health checks. It doesn't implement stickiness however, so just like with
  27. NGINX, as long as stickiness is not needed that can be enough to start with.
  28. And similarly, since HAProxy and Varnish integrate so well together, it's easy
  29. to add it later into the mix to complement the feature set.

HAProxy 2.0.14 – Starter Guide
,