Yeah, anonymous caching is super critical, we monkey it in here: https://github.com/discourse/discourse/blob/master/lib/middleware/anonymous_cache.rb to be honest this really should be part of rails.
On Wed, Dec 3, 2014 at 10:00 PM, Hongli Lai <[email protected]> wrote: > Unicorn *is* in general very good and very efficient, no doubt about that. > Eric Wong has made great design choices and is an excellent programmer. > > Having said that, in certain specific cases there's still room for > improvement. That's why we focused so much on microoptimizations and > specific optimizations like turbocaching. Have you followed Phusion > Passenger's Server Optimization Guide? > https://www.phusionpassenger.com/documentation/ServerOptimizationGuide.html > > Also, you have to ensure that your Rails app sets the correct caching > headers. By default, Rails sets "Cache-Control: private, no-store" so that > the turbocache cannot kick in. You should see very different results if you > add "headers['Cache-Control'] = 'public'" to your Rails app. If you need > any help with this, please feel free to contact me off-list. I'd be happy > to help. We have also a benchmarking kit so that you can double check the > results; email me if you're interested in this. > > As Sam said, most of the time will be spent in the Rails app. But > turbocaching is one notable exception: it's the one feature that can speed > things up even if your app is slow - provided that you set HTTP caching > headers correctly. > > Unicorn is excellent at what it does: it's a minimal server with a specific > I/O model that is supposed to be used behind a buffering reverse proxy. > There is nothing wrong with that, and for the workloads that it's designed > for, it's great. Phusion Passenger has merely chosen a non-generalist > approach that aims to squeeze additional performance from specific cases. > Of course, nothing's a silver bullet. Like any tool, it only works if you > use it correctly. > > On Wed, Dec 3, 2014 at 10:50 AM, Bráulio Bhavamitra <[email protected]> > wrote: > >> Hello all, >> >> I've just tested a one instance each (one worker with unicorn and >> --max-pool-size 1 passenger 5) on the rails app I work. >> >> And the results are just as I expected, no miracle at all: Unicorn is >> still the fatest! >> (the difference is only a few milliseconds less per request) >> >> The blocking design of unicorn is proving itself very efficient. >> >> cheers! >> bráulio >> >> > > > -- > Phusion | Web Application deployment, scaling, and monitoring solutions > > Web: http://www.phusion.nl/ > E-mail: [email protected] > Chamber of commerce no: 08173483 (The Netherlands) > >
