Squid is easy to set up as a simple HTTP proxy, plus it has a number of useful advanced functions, such as simple traffic shaping and access controls. You can also use Squid in reverse to improve the performance of your own Web servers. This makes it usable as both a reverse proxy and an HTTP accelerator.
This works in the same way the Squid proxy caches requests from site visitors and serves them up instead of hitting the Web server every time. Some estimates claim as much as 35 percent savings in bandwidth. A single Squid proxy can serve several Web servers. In this era of complex dynamic Web sites, the World Wide Wait seems longer than ever, even with widespread broadband. Let's face it, site visitors don't care about exotic database backends or fancy scripting tricks; they just don't want to die of old age waiting for pages to load.
Squid can't cache dynamic content like ASP pages or CGI scripts. But even insanely dynamic sites have a lot of cache-able objects, such as images and static pages. A Squid reverse proxy can also perform load balancing, and it adds a useful layer of security. It supports virtual domains, and a single Squid proxy can control which requests go to which backend servers. Squid also supports password-protected pages and ensures logins are directed to the correct server.