Forward proxy vs Reverse proxy and Proxy Cache features

cachenewbie nginx-forum at
Sun Sep 26 21:06:53 MSD 2010

All  -  I've read through most of the posts before posting this but
couldn't find answer to the specific question I have. 

I've been looking at nginx, squid, varnish and Apache Traffic server to
determine the best one to use as a [u]transparent forward caching
proxy[/u] with necessary modifications (to the code or configuration
file) - I understand Nginx (and varnish) is built from scratch to be a
reverse proxy  and I know nginx performs very well under load as a
reverse proxy.  With Nginx adoption increasing, I'd like to know if
there are enough "caching support" in Nginx to be used as [a] caching
proxy and [b] forward proxy. Here are my specific questions:
1. What major "feature" or "capability" does Nginx lack as a forward
proxy (as compared to say Squid) ? With modification to the code or
"proxy_pass" config line, it's not difficult to make it talk to the
Internet (and not a specific backend server). So what are the missing
pieces in Nginx that makes it unsuitable for forward proxy mode ? 
2. What are the "caching" features that are critical (compared to squid)
that are missing in squid ? If Nginx is changed to run as forward proxy
(with httpproxymodule), can I expect similar cache hit with Nginx and
other proxy caches (say Squid) ? 
3. What are other features of a cache that Nginx doesn't support and are
critical ?
4. I know Nginx is far superior in performance compared to squid but
which piece/component of Nginx is contributing to the gain ? Is it the
event driven model, RAM memory usage, data structures or caching
architecture ? 

Thanks in advance.

Posted at Nginx Forum:,134286,134286#msg-134286

More information about the nginx mailing list