I'm working on a project where it's critical to minimize the possibility
of a single point of failure, and where there will be quite high
traffic. Currently in another version of the system we're using nginx as
a remote proxy server for Tomcat, but the current plan is to use a
hardware load balancer in front of a Tomcat cluster (or a cluster of
nginx+Tomcat instances). I'm wondering, though, given the extraordinary
performance and reliability of nginx, whether we might be able to omit
the hardware load-balancer and use instead a couple of dedicated minimal
nginx servers with failover between them. If anyone has gone down this
path and has some good ideas and/or useful experience, I'd be keen to
hear from them.