2 ms·
Unicorn is only meant for "fast clients" and they specifically say that "slow clients" should be served by a reverse proxy like nginx. I put those terms in quot
by bretthopper 14y ago
Unicorn is only meant for "fast clients" and they specifically say that "slow clients" should be served by a reverse proxy like nginx. I put those terms in quotes since they're subjective. But I've read that Fast Clients are only those on a LAN. So basically, Unicorn should NEVER be directly exposed to a user.
Problem is, Heroku doesn't run a reverse proxy anymore on its Cedar stack. Rainbows[1] is a server based on Unicorn but designed to also handle longer requests/slow clients.
[1]http://rainbows.rubyforge.org/ http://rainbows.rubyforge.org/
- habosa 14y agoWhy does the speed of the client matter?
- bretthopper 14y agoThis is a good read about it: http://unicorn.bogomips.org/PHILOSOPHY.html http://unicorn.bogomips.org/PHILOSOPHY.html
- lucaspiller 14y agoIs there a good explanations of why Rainbows is better than Unicorn for slow clients? All I seem to have read is that it is better, but without going into details what is different. We use Nginx in front of Unicorn as suggested, however we also do synchronous file uploads and thumbnailing, the process takes a while (maybe 20 seconds) and I would like to understand whether we should be using Rainbows for this.