Ruby has a number of different technologies designed for deploying web servers. Even though it is also possible to program one’s own server, these technologies offer scalable and secure solutions for most situations.
The Phusion Passenger is a free web server technology designed to directly integrate with Apache and NGINX web servers. However, it can also be run on its own.
Passenger can host multiple applications on a single server. It is designed to be immune to
Puma is a Ruby web server designed to work exclusively with Ruby’s Rack interface. Puma was designed for maximum efficiency in speed and memory usage.
Puma makes use of very few resources due to their philosophy. With its multiple options of modes and minimum and maximum amountx of threads for operation, Puma offers a versatile solution to web development. Puma also works well with JRuby. To help with multiple applications, Puma has a tool called Jungle.
Unicorn is an open-source web server technology designed to work with Ruby.
Unicorn does not offer multi-threading capabilities. Instead, it makes use of a process model that spawns and monitors worker processes and kills those that take too much time or have memory issues. Unicorn uses the operating system for load-balancing and allows rolling rollouts where updates can be deployed without breaking active connections; thus, minimizing downtime.
View all Courses