Puma’s popularity as both a web and Rails server has shown steady growth toward the position of preferred tool for both roles. Growing out of the once-mighty Mongrel, Puma hails itself as "A Modern, Concurrent Web Server for Ruby". Showing significantly lower memory usage and response times than Unicorn and Phusion Passenger the communities support appears to be continuing to shift in its direction.
We didn’t see any signs of Puma being used as a Rails Server until it’s first showing in 2014. Since then, adoption has jumped from 5 to 22 percent, with a significant number of respondents selecting it as one of their preferred Web servers. This respectable showing places it between Nginx and Apache, a wonderful position for a project offering a direct alternative to the long-time standards.
While this growth as a web server is impressive, Puma’s position as a Rails Server is equally so. Bolstered by problems with Unicorn that can exacerbate memory leak issues opening a susceptibility to slow user attacks, hosting provider Heroku has recommend Puma as the default web server for Ruby applications. Have you, already, or are you considering switching Rails servers for any other reasons? We would love to hear your comments below.
There were many consistent trends across this years survey when compared to past. For the first time, a greater percentage of respondents stated they were using Puma (35%) as their web server in production. Passenger, a long time standard, slid only slightly with a strong 30% showing placing it only slightly behind the top two tools. Statistically tied in the same comparison with Unicorn, Puma seems to be working its way toward the head of the pack serving double-duty as the choice for both Rails and web servers running Rack applications in the wild.