Being cloud native: 12 factor app design
Blog post from Tyk
The concept of being cloud native revolves around leveraging cloud computing services to achieve maximum scalability, flexibility, and agility in application development. A cloud-native approach is not merely about using specific tools like containers or platforms such as AWS, but rather adopting a mindset that embraces the potential of cloud-based solutions to ensure high availability and rapid deployment. The 12-factor app design is a methodology that exemplifies cloud nativity by promoting best practices such as maintaining a single codebase, separating configuration from code, and treating backing services as attached resources. It enables applications to be highly portable, easily scalable, and adaptable to frequent updates, thus supporting the DevOps philosophy of continuous delivery and close collaboration between development and operations teams. The 12 factors also emphasize the importance of disposability, concurrency, and reducing the gap between development and production environments, which collectively enhance the application's agility and resilience.