Posted in: Programming

The Twelve-Factor App methodology

The twelve factors
The Twelve-Factor App methodology is a methodology for building software-as-a-service applications. These best practices are designed to enable applications to be built with portability and resilience when deployed to the web.
To effectively design and build apps for the cloud, you should understand the twelve factors:
I. Codebase: One codebase tracked in revision control, many deployments
II. Dependencies: Explicitly declare and isolate dependencies
III. Config: Store configuration in the environment
IV. Backing services: Treat backing services as attached resources
V. Build, release, run: Strictly separate build and run stages
VI. Processes: Execute the app as one or more stateless processes
VII. Port binding: Export services via port binding
VIII. Concurrency: Scale out via the process model
IX. Disposability: Maximize robustness with fast startup and graceful shutdown
X. Dev/prod parity: Keep development, staging, and production as similar as possible
XI. Logs: Treat logs as event streams
XII. Admin processes: Run admin/management tasks as one-off processes

Leave a Reply

Your email address will not be published. Required fields are marked *