12 Factor App methodology & Cloud Native apps
The Twelve-Factor App (a collection of patterns that are closely related to microservices approaches) is considered a requirement for cloud-native application architectures : Codebase - One codebase tracked in revision control, many deploys Dependencies - Explicitly declare and isolate dependencies Configuration - Store configuration in the environment Backing Services - Treat backing services as attached resources Build, release, run - Strictly separate build and run stages Processes - Execute the app as one or more stateless processes Port binding - Export services via port binding Concurrency - Scale out via the process model Disposability - Maximize robustness with fast startup and graceful shutdown Dev/prod parity - Keep development, staging, and production as similar as possible Logs - Treat logs as event streams Admin processes - Run admin/management tasks as one-off processes A number of commentators have argued that the relevance of the Twelve-Factor app concep...