A comprehensive guide and collection of best practices for deploying, monitoring, and securing Ruby on Rails applications in production environments.
Production Rails is a guide that provides best practices for operating Ruby on Rails applications in production environments. It covers critical areas like security, error handling, logging, database management, and performance monitoring to help developers build reliable and scalable applications. The guide recommends specific libraries and services to implement these practices effectively.
Rails developers, DevOps engineers, and engineering teams responsible for deploying and maintaining Ruby on Rails applications in production, particularly those seeking to improve reliability and scalability.
It offers a curated, experience-driven compilation of tools and techniques that prevent common production issues, saving time and reducing risk compared to piecing together solutions independently. The guide is maintained by an active open-source contributor with real-world insights from high-scale environments.
Best practices for running Rails in production
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Recommends specific, battle-tested libraries like Strong Migrations and Sidekiq based on experience at high-scale companies such as Instacart, reducing guesswork.
Covers essential areas from security and error reporting to performance monitoring and feature management, providing a complete blueprint for production readiness.
Includes ready-to-use code snippets, such as Lograge configuration and database timeout settings, making it easier for developers to apply the advice.
Emphasizes tools like Safely for exception handling and Rollout for feature flags to prevent and manage production issues before they impact users.
Heavily advocates for specific external services (e.g., Rollbar, Papertrail, New Relic), which can lead to vendor lock-in, increased costs, and integration complexity.
The guide is tailored solely for Ruby on Rails, making it irrelevant for teams using other frameworks or languages, limiting its general applicability.
Implementing the full suite of recommendations requires setting up and maintaining multiple independent tools, which can be daunting and time-consuming for smaller or resource-constrained teams.