3 ms·
"Apache, due to its process model."... "(prefork)" Seems to me that the above is all based on reflections from decades ago w/ Apache httpd 1.3. Right now, all
by jimjag 11y ago
"Apache, due to its process model."... "(prefork)"
Seems to me that the above is all based on reflections from decades ago w/ Apache httpd 1.3. Right now, all web servers can handle similar levels of concurrency with the bottleneck being the network pipe itself.
ATS is a great platform; using it in combo w/ Apache httpd (2.4) allows a pure open source implementation with all the power, speed, reliability one could want, and protection against Open Core business models.
- skuhn 11y agoUh well, it wasn't "decades ago" but it was some old timey stuff. Yahoo used Apache 1.3 as recently as 2012. They also disabled Keep-Alive on Apache, and most properties would use the hardcoded default number of prefork processes (32). It wasn't the smartest setup. Nevertheless, I don't think that nginx / Apache / Varnish / haproxy / etc. are able to handle similar concurrent connection levels as ATS without significantly impacting 95th percentile latency due to their core architectures.
- jimjag 11y agoThere's good info here: http://www.slideshare.net/bryan_call/choosing-a-proxy-server-apachecon-2014
- skuhn 11y agoAgreed, it's a good presentation and does a good job of being fair to the various software considered. (I worked on a team closely related to Bryan's team at Yahoo)
- jjm 11y agoHey, nice seeing you here! Glad to see the project reach HN (finally). That indeed is a very good slide deck. Some features that I preach are: - good turnkey default values - lua support - config options galore (Bryan labels it a con, but if you want control it's perfect) - good logging - historically proven scalability on large smp, xxlarge memory, multi nic systems Edit: forgot to add one more thing though maybe not worthy a bullet point. If possible, a preference for physical rather than virtual is where I've seen performance with ATS shine. That is one reason why you would want as much config control possible.