Proxies come in two different forms. There are forward proxies and reverse proxy servers. Forward proxy services tend to be more talked about, because they’re intentionally utilized by end users. A user sets up a remote server to act as a bridge to the Internet. The user tells the server that he wants to load up a site. The server mirrors that request, and receives the site data. This is then sent right back to the end user’s browser. This essentially allows one to load up a website using different identifiers than what’s actually associated with one’s computer. This is typically used for privacy concerns and to get around country-based restrictions or filters. However, while more well known than the reverse proxy service, it’s actually far less common.
The main reason for this is that a reverse proxy service is designed to be transparent to the end user. He or she should essentially be unaware that they’re making use of it. A reverse proxy is essentially used to give a helping hand to another server. Consider the example of an easy file transfer.
One will of course want a good deal of reliability for file transfers. However, heavy server load can easily make this process unstable or unreliable. A reverse proxy would accept the request for a file transfer. However, instead of serving it directly, the proxy would then push the request to a secondary server. The secondary server will then receive the request, process it, and begin the managed file transfer.
This is true for all data delivery methods. It can work with everything from zip files to Web pages. To the end user, this entire process will seem normal and seamless. It will seem just like he’s loading the file or site from the main proxy server. The different types of servers will be invisible to the users of a site or service.
The reason this is such a powerful tool becomes clear when looking at the secondary server. The reverse proxy server isn’t limited to just one destination. The server it connects to can be one entity, tens or even hundreds of other servers. This means that the full load of services can be evenly distributed among a larger number of servers. This will essentially increase the load the site can withstand by however many servers are used by the reverse proxy. So a site which would become unusable with a certain amount of people using it at once would be able to handle twice those numbers by adding twice as many servers onto the other side of the reverse proxy server.