Pound is a lightweight
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
reverse proxy
In computer networks, a reverse proxy is the application that sits in front of back-end applications and forwards client (e.g. browser) requests to those applications. Reverse proxies help increase scalability, performance, resilience and securi ...
program and
application firewall
An application firewall is a form of firewall that controls input/output or system calls of an application or service. It operates by monitoring and blocking communications based on a configured policy, generally with predefined rule sets to ...
suitable to be used as a
web server
A web server is computer software and underlying hardware that accepts requests via HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, commonly a web browser or web crawler, initi ...
load balancing solution. Developed by an
IT security company, it has a strong emphasis on security. The original intent on developing Pound was to allow distributing the load among several
Zope
Zope is a family of free and open-source web application servers written in Python, and their associated online community. Zope stands for "Z Object Publishing Environment", and was the first system using the now common object publishing method ...
servers running on top of ZEO (Zope Extensible Object). However, Pound is not limited to Zope-based installations. Using
regular expression
A regular expression (shortened as regex or regexp; sometimes referred to as rational expression) is a sequence of characters that specifies a search pattern in text. Usually such patterns are used by string-searching algorithms for "find" ...
matching on the requested
URL
A Uniform Resource Locator (URL), colloquially termed as a web address, is a reference to a web resource that specifies its location on a computer network and a mechanism for retrieving it. A URL is a specific type of Uniform Resource Identifi ...
s, Pound can pass different kinds of requests to different backend server groups. A few more of its most important features:
* detects when a backend server fails or recovers, and bases its load balancing decisions on this information: if a backend server fails, it will not receive requests until it recovers
* decrypts
requests to
Hypertext Transfer Protocol, http ones
*
IPv6
Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. I ...
support
* can load balance from IPv6 clients to IPv4 servers and vice versa
* rejects incorrect requests
* can be used in a
chroot
A chroot on Unix and Unix-like operating systems is an operation that changes the apparent root directory for the current running process and its children. A program that is run in such a modified environment cannot name (and therefore normall ...
environment
* has no special requirements concerning which web server software or browser to use
* supports virtual hosts
*
Server Name Indication
Server Name Indication (SNI) is an extension to the Transport Layer Security (TLS) computer networking protocol by which a client indicates which hostname it is attempting to connect to at the start of the handshaking process. This allows a server ...
(SNI) for SSL/TLS certificate negotiation
* configurable
Pound is distributed under the terms of the
GNU General Public License
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end user
In product development, an end user (sometimes end-user) is a person who ultimately uses or is intended to ulti ...
and can be used free of charge even in business environments.
See also
*
Traffic Server
The Apache Traffic Server (ATS) is a modular, high-performance reverse proxy and forward proxy server, generally comparable to Nginx and Squid. It was created by Inktomi, and distributed as a commercial product called the Inktomi Traffic Ser ...
*
Web accelerator
A web accelerator is a proxy server that reduces website access time. They can be a self-contained hardware appliance or installable software.
Web accelerators may be installed on the client computer or mobile device, on ISP servers, on the ser ...
which discusses host-based HTTP acceleration
*
Proxy server
In computer networking, a proxy server is a server application that acts as an intermediary between a client requesting a resource and the server providing that resource.
Instead of connecting directly to a server that can fulfill a requ ...
which discusses client-side proxies
*
Reverse proxy
In computer networks, a reverse proxy is the application that sits in front of back-end applications and forwards client (e.g. browser) requests to those applications. Reverse proxies help increase scalability, performance, resilience and securi ...
which discusses origin-side proxies
*
Comparison of web servers
Web server software allows computers to act as web servers. The first web servers supported only static files, such as HTML (and images), but now they commonly allow embedding of server side applications.
Some web application frameworks include s ...
*
Comparison of lightweight web servers
Comparison or comparing is the act of evaluating two or more things by determining the relevant, comparable characteristics of each thing, and then determining which characteristics of each are similar to the other, which are different, and t ...
*
Internet Cache Protocol The Internet Cache Protocol (ICP) is a UDP-based protocol used for coordinating web caches. Its purpose is to find out the most appropriate location to retrieve a requested object in the situation where multiple caches are in use at a single site. ...
References
External links
Pound websitePound mailing list archive* Web archive
Pound Best Practice Deployment* {{Cite web, url=https://debian-administration.org/article/249/Simple_webserver_load_balancing_with_pound, title=Simple webserver load balancing with pound, last=, first=, date=20 Sep 2005, website=debian-administration.org, url-status=live, archive-url=, archive-date=, access-date=2019-11-06
Free network-related software
Unix network-related software
Reverse proxy