14 ms·
Disclaimer: I'm a Phusion team member Your use case is exactly what we built Phusion Passenger for. It could be that applying some configuration could improve
by tinco 12y ago
Disclaimer: I'm a Phusion team member
Your use case is exactly what we built Phusion Passenger for. It could be that applying some configuration could improve startup performance for you, but general runtime performance of Passenger should be on par with a Unicorn solution.
Note that to use Unicorn you would have to configure an nginx instance that proxies for Unicorn. This is where Passenger shines, we already integrate with nginx so there's no extra configuration or management overhead. Passenger is resilient so it will survive any crashes of your application and automatically respawn any failed processes.
edit: The configuration to make your Passenger perfect for dedicated single app servers is:
passenger_min_instances your_num_of_cpus;
passenger_max_instances your_num_of_cpus;
You can measure your performance and tweak the number, as long as they are equal passenger won't be spawning and killing anymore, making your performance more reliable.