What Updated Web Cache Servers are available (Caching HTTP Proxy)
I am going to install Ubuntu 11.10 Server (And soon 12.04 Server) and wanted to know what Web Cache servers (Caching HTTP proxy) come with Ubuntu 11.10/12.04 to improve performance and reduce bandwidth consumption when web surfing. This will be applied in 2 places, a LAN in my home and in another place I work. I wish to use a Web Cache but it has to be up to date. At most a year behind the latest but not more.
For this I will also be using Apache as the HTTP server (For the work place) but for home we just one something that when we connect for a second time to a site it would load faster that site. For example going to facebook, askubuntu, omgubuntu, phoronix or any other website the first time would take the normal time. But the next time the cache should load the site much faster for all PCs in the home.
NOTE - Edited to correct the name. It should be a forward proxy, not a reverse proxy since I will not install a web server, only a proxy between clients and internet.
The official Ubuntu web proxy caching server is named squid
!
Squid is a full-featured web proxy cache server application which provides proxy and cache services for Hyper Text Transport Protocol (HTTP), File Transfer Protocol (FTP), and other popular network protocols. Squid can implement caching and proxying of Secure Sockets Layer (SSL) requests and caching of Domain Name Server (DNS) lookups, and perform transparent caching. Squid also supports a wide variety of caching protocols, such as Internet Cache Protocol, (ICP) the Hyper Text Caching Protocol, (HTCP) the Cache Array Routing Protocol (CARP), and the Web Cache Coordination Protocol. (WCCP)
The Squid proxy cache server is an excellent solution to a variety of proxy and caching server needs, and scales from the branch office to enterprise level networks while providing extensive, granular access control mechanisms and monitoring of critical parameters via the Simple Network Management Protocol (SNMP). When selecting a computer system for use as a dedicated Squid proxy, or caching servers, ensure your system is configured with a large amount of physical memory, as Squid maintains an in-memory cache for increased performance.
Installation is as easy as typing...
sudo apt-get install squid
(then all you need is to configure it ... and that can take care of the rest of your life since it got 1000s of options ;-) )
- Ubuntu serverguide
- Ubuntu community page
- Official website
There is also squidguard
that can help with content filtering and access if you also need something like that (best method to lower bandwith consumption is to block access to certain websites ;) )
Apart for the nice one mentioned by Rinzwind, in Ubuntu 12.04 I found:
Varnish
Varnish is a web application accelerator. You install it in front of your web application and it will speed it up significantly.
Varnish is an HTTP accelerator designed for content-heavy dynamic web sites. In contrast to other HTTP accelerators, such as Squid, which began life as a client-side cache, or Apache and nginx, which are primarily origin servers, Varnish was designed from the ground up as an HTTP accelerator. Varnish is focused exclusively on HTTP, unlike other proxy servers that often support FTP, SMTP and other network protocols.
https://www.varnish-cache.org/
Polipo
Polipo is a small and fast caching web proxy (a web cache, an HTTP proxy, a proxy server). While Polipo was designed to be used by one person or a small group of people, there is nothing that prevents it from being used by a larger group.
Polipo has some features that are, as far as I know, unique among currently available proxies:
-
Polipo will use HTTP/1.1 pipelining if it believes that the remote server supports it, whether the incoming requests are pipelined or come in simultaneously on multiple connections (this is more than the simple usage of persistent connections, which is done by e.g. Squid);
-
Polipo will cache the initial segment of an instance if the download has been interrupted, and, if necessary, complete it later using Range requests;
-
Polipo will upgrade client requests to HTTP/1.1 even if they come in as HTTP/1.0, and up- or downgrade server replies to the client's capabilities (this may involve conversion to or from the HTTP/1.1 chunked encoding);
-
Polipo has complete support for IPv6 (except for scoped (link-local) addresses). Polipo can optionally use a technique known as Poor Man's Multiplexing to reduce latency even further.
http://www.pps.jussieu.fr/~jch/software/polipo/
Apache Traffic Server
Apache Traffic Serverâ„¢ is fast, scalable and extensible HTTP/1.1 compliant caching proxy server. Formerly a commercial product, Yahoo! donated it to the Apache Foundation, and it is now an Apache TLP
Caching - Improve your response time, while reducing server load and bandwidth needs by caching and reusing frequently-requested web pages, images, and web service calls.
Proxying - Easily add keep-alive, filter or anonymize content requests, or add load balancing by adding a proxy layer.
Fast - Scales well on modern SMP hardware, handling 10s of thousands of requests per second.
Extensible - APIs to write your own plug-ins to do anything from modifying HTTP headers to handling ESI requests to writing your own cache algorithm.
Proven - Handing over 400TB a day at Yahoo! both as forward and reverse proxies, Traffic Server is battle hardened.
http://trafficserver.apache.org/