Phusion Passenger 4.0 Release Candidate 4 – Phusion Corporate Blog
blog.phusion.nl
blog.phusion.nl
- Support for multiple Ruby interpreters inside the same instance. But to be fair Unicorn is designed to be run in a different way so this may or may not be an advantage for you.
- JRuby support.
- Python support, and in the future more languages.
- Dynamically adjust the number of processes based on traffic.
- Real-time disk-backed response buffering, first introduced in 4.0 beta 1. Unicorn relies on web server buffering which tends to buffer the entire response before sending it to the client. Phusion Passenger 4 allows you to use Rails 4 streaming with ease, without blocking the server on slow clients, with good performance and without configuration.
- Phusion Passenger Enterprise supports multithreading, allowing you to use it for I/O-bound, long-running requests. Unicorn is strictly single-threaded multi-processing only and can only be used for short-running fast requests, by design.
- Rolling restarts (as implemented in Enterprise) are more automated and efficient than in Unicorn. Phusion Passenger Enterprise restarts processes one-by-one and only requires 1 config line. Unicorn's rolling restarts temporarily requires double memory. You can make it restart one-by-one but it requires manual scripting work involving signals.
- Out-of-Band Work. This is like Unicorn's Out-of-Band GC, but is more flexible: you can perform any arbitrary work (not just GC), and it also works with multithreaded programs. Phusion Passenger also spawns a new process before performing Out-of-Band Work so that your visitors never have to wait. - Deployment error resistance (Enterprise feature). - Live IRB console (Enterprise feature). - Commercial support with guaranteed response times.
I wrote this response quickly so I may have missed some things. If anybody spots any inaccuracies, please let me know.
Not having to manage Unicorn forks, processes, sending USR2 signals etc is the reason why I use Passenger. I personally couldn't care less about the fancy features.
As to the Phusion release, congrats. While I use unicorn, I always welcome alternatives. It means the ecosystem is healthy.
Cheers