How we migrated application servers from Unicorn to Puma
Blog post from GitLab
GitLab successfully completed its migration from the Unicorn to the Puma web server, marking this transition as a significant improvement for their application infrastructure. Both Unicorn and Puma are servers for Ruby on Rails, but Puma, with its multithreaded model, offers enhanced scalability and memory efficiency compared to Unicorn's single-threaded process model. The migration journey, which began with initial explorations in 2015, involved extensive tuning and testing to ensure thread safety and optimal configuration, leading to the creation of a dedicated Memory Team in early 2019. Puma's deployment on GitLab.com resulted in a notable reduction in memory usage by approximately 37% without impacting request queuing, duration, or CPU usage, as observed after the Puma roll-out in GitLab's 13.0 release. Despite encountering challenges such as thread safety issues and tuning difficulties, GitLab's efforts yielded substantial infrastructure efficiency gains, allowing them to reconsider their memory requirements and pursue new functionalities like real-time editing.
No tracked trend matches for this post yet.
Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.