🔑 The Twelve-Factor App is a methodology designed to build cloud-native applications by standardizing development practices. It provides a shared language, but its understanding can vary. This book clarifies the 12 factors and expands on them to address modern app development challenges.
🚀 Heroku, a pioneer in the public cloud, introduced these factors to guide developers in building cloud-ready apps that scale and deploy quickly.
The 12 factors:
1️⃣ Codebase: One codebase tracked in revision control, many deploys
2️⃣ Dependencies: Explicitly declare and isolate dependencies
3️⃣ Configuration: Store configuration in the environment
4️⃣ Backing Services: Treat backing services as attached resources
5️⃣ Build, release, run: Strictly separate build and run stages
6️⃣ Processes: Execute the app as one or more stateless processes
7️⃣ Port binding: Export services via port binding
8️⃣ Concurrency: Scale out via the process model
9️⃣ Disposability: Maximize robustness with fast startup and graceful shutdown
🔟 Dev/prod parity: Keep development, staging, and production as similar as possible
1️⃣1️⃣ Logs: Treat logs as event streams
1️⃣2️⃣ Admin processes: Run admin/management tasks as one-off processes
📈 While still relevant, the tech landscape has evolved. The book introduces new guidelines beyond the original 12, covering API-first, telemetry, security, and more. It emphasizes modern best practices for cloud-native applications, ensuring scalability, rapid deployment, and adaptability.
📚 This methodology fosters a virtuous cycle where mastering one factor eases the adoption of others, leading to more robust, scalable cloud apps.
#cloud #native #12factors #app #poll #programming