I have come across HAProxy some times in the past and implemented it as LB for fairly loaded systems. These days I run an ad serving network named Tailsweep and we have scaled beyond the capabilities of our hardware operations supplier and since we have most competence needed inhouse we decided to scale up and out ourselves.
Currently we have 25 servers of which 7 are webservers. We rent a LB service from our supplier which is a software LB running on FreeBSD. The problem is that the guy who wrote the code left the operations supplier a couple of years ago so no one knows howto tweak this bastard and how it performs and howto monitor it. I as a control freak need an interface which I can monitor with Nagios and Cacti so I can plan the hardware investments accordingly and find bottlenecks early on.
Currently we have about 2-300 requests/second and I guess about 1000 simultaneous connections (no clue since we cannot monitor the LB). Each request is fairly small (<5k in average) so the bandwidth is currently not the limit as it seems but it might be that the amount of concurrent connections are.
I estimate that we have at least 15 million pageviews a day where most of them are non static requests.
The whole system is now sluggish and lighttpd are caught in socket read state for a really long time indicating that it is the inbound traffic which is the limitation not the outgoing since no connections are stuck in a write state. Just once an hour or so the lighttpd write-timeout on 10 secs kicks in but you can at any given time find hundreds of connections in read state over 5 secs.
We are launching in the UK very soon and expect the traffic to at least grow 2-4 times within 3-6 months.
The question is: Is HAProxy an alternative for us ?
I'm thinking like this; Buy a couple of servers tuned for webserving and try HAProxy on them and if that does not turn out well make them regular webservers and buy a hardware loadbalancer like the ones from loadbalancer.org
I'm a geek at tuning systems on many levels and hate to waste money in unneeded infrastructure so I would really like to find that HAProxy meet my criterias.
I would as well rather have many smaller loadbalancers tweaked at serving different content than having a monster serving everything.
Anyone have any input to guide me?
-- Marcus Herou CTO and co-founder Tailsweep AB +46702561312 marcus.herou#tailsweep.com http://www.tailsweep.com/ http://blogg.tailsweep.com/Received on 2008/09/24 21:01
This archive was generated by hypermail 2.2.0 : 2008/09/24 21:15 CEST