32. Competitors: A stolen slide, probably not up-to-date! ATS HAproxy nginx Squid Varnish mod_proxy Worker Threads Y N N N Y Y Multi-Process N Y Y N Y Y Event-driven Y Y Y Y N N? Plugin APIs Y N Y part Y Y Forward Proxy Y N N Y N Y Reverse Proxy Y Y Y Y Y Y Transp. Proxy Y Y N Y N N Load Balancer part Y Y Y Y Y Cache Y N Y Y Y Y ESI soon N N Y Y N ICP Y N N Y N N Keep-Alive Y N Y Y Y Y SSL Y N Y Y N Y
33.
34.
35.
36.
Editor's Notes
In other words: It is finished when either you don’t need me or someone else is doing it. Also, turn work that is laborious non-lousy
Not to say that those companies are using it (I don’t know if they are), but they employ committer to the project
Try to use the latest and greatest in dev until your first release. As it will front your site and likely handle you all of your incoming traffic it is a critical part of your infrastructure and you want the latest features and bug fixes. Due to its criticality, It has been my experience that people are reluctant to upgrade once it is live as it “just works”.
For storage, I say “if” you’re using caching. Understand that you really might not need to do this. In Y! US News we run it in proxy mode only and have had no traffic issues as of late. For the US Elections of 2008, we had a small “blip”, while other news and media organizations went down. Our “blip” was caused by keep-alives that were set too high unnecessarily. We adjusted this and were fine afterwards.
A client browser sends an HTTP request addressed to a host called www.host.com on port 80. Traffic Server receives the request because it is acting as the origin server (the origin server’s advertised hostname resolves to Traffic Server). Traffic Server locates a map rule in the remap.config file and remaps the request to the specified origin server (realhost.com). Traffic Server opens an HTTP connection to the origin server. If the request is a cache hit and the content is fresh, then Traffic Server sends the requested object to the client from the cache. Otherwise, Traffic Server obtains the requested object from the origin server, sends the object to the client, and saves a copy in its cache.
This table is much to large to go into details, but it shows that there are a number of features to take into consideration when choosing an intermediary. This is not a complete list in any way, it is merely an example of what features you might want to consider for your proxy choices.