Load balancing web servers with Pound

If you’re running a web site and have come to a point where a single web server cannot handle the traffic, then it’s time to get multiple web servers and share the loading. To do that you’ll need a load balancer which distributes the web traffic among multiple web servers.

Basically you’ve two choice — go for the hardware solutions (expensive with many nice features) or software solutions (possibly free but with limited features). If you want a free and open source solution then Pound is the choice.

Pound is a Free Open Source reverse-proxy, load balancer, SSL wrapper, http/https sanitizer, fail over server and a request redirector:

1. a reverse-proxy: it passes requests from client browsers to one or more back-end servers.
2. a load balancer: it will distribute the requests from the client browsers among several back-end servers, while keeping session information.
3. an SSL wrapper: Pound will decrypt HTTPS requests from client browsers and pass them as plain HTTP to the back-end servers.
4. an HTTP/HTTPS sanitizer: Pound will verify requests for correctness and accept only well-formed ones.
5. a fail over-server: should a back-end server fail, Pound will take note of the fact and stop passing requests to it until it recovers.
6. a request redirector: requests may be distributed among servers according to the requested URL.

Pound is built with security in mind, it can run as setuid/setgid and/or in a chroot jail. It’s a very small, robust and efficient program.

It’s very easy to install and configure.



pound can be installed from the source or the binary depending on your os distribution.


Here’s an example of simple configuration to share the loading between two web servers behind the Pound load balancer

Address <real ip address>
Port 80
Address <real ip address>
Port 443
Cert “/etc/pound/ssl-cert.pem”

Port 80
Port 80

Pound can keep track of sessions between a client and a back-end server by client address, Basic authentication, URL parameter, cookie or header value. Here’s how we keep the session by cookies

Type Cookie
ID “sess”
TTL 300

Pound is straight forward to configure and understand. It’s a perfect choice for free and open source load balancer.

Be Sociable, Share!
Posted in Admin, HowTo, Linux/Unix, Network, Security, Technology
One comment on “Load balancing web servers with Pound
  1. Audrea says:

    Skype has opened its internet-structured consumer beta on the world, soon after launching it generally inside the U.S.
    and U.K. previous this 30 days. Skype for Online also now
    can handle Linux and Chromebook for immediate messaging communication (no
    voice and video but, all those call for a plug-in installing).

    The increase of your beta provides help for an extended listing of spoken languages to assist reinforce that worldwide usability

Leave a Reply

Your email address will not be published. Required fields are marked *


Recent Comments

FirstCandace on WinXP and OSX dual boot in MacBook Pro: I have noticed you don’t monetize your…(November 10, 2017, 11:32 pm)
From Wikipedia, the free encyclopedia – Ram Bahadur Bomjon on Buddha Boy attacked and injured a guy with his sword?: […] Niranjan (July 20, 2007). “Buddha Boy…(September 2, 2017, 5:07 pm)
Micle on How I Prepared and Passed CISSP : Nice Aritcle…(August 10, 2017, 8:51 am)
David on How I Prepared and Passed CISSP : I am very happy to read this…(August 10, 2017, 8:21 am)
95Russell on Simulating Cisco and Linux Networks: Hello blogger, i must say you have…(August 5, 2017, 8:30 pm)