I carried out an interesting quiz during one of my Interop workshop:
- How many use Linux-based servers? Almost everyone raised their hands;
- How many use Apache or Tomcat web servers? Yet again, almost everyone.
- How many run applications written in PHP, Python, Ruby…? Same crowd (probably even a bit more).
- How many use Nginx, Squid or HAProxy for load balancing? Very few.
Is there a rational explanation for this seemingly nonsensical result?
The open-source load balancing products are as mature as their operating system and web application counterparts, they’re used by some of the largest web properties out there, and yet most enterprises prefer to use centralized hardware appliances. It definitely seems like at least some parts of networking remain stuck in the mainframe world, or maybe I’m missing something fundamental.
Have you tried using open-source load balancers? Do you run them in production? Did they work or did they fail badly? Did they lack features you badly need? Which features? Please share your experiences in the comments.