随着云计算的兴起,软件通常会以服务的形式来交付,它们被称为网络应用程序,或软件即服务(SaaS)。
12-Factor 为如何构建 SaaS 应用提供了最佳实践:
为了使新的开发者花费最少的学习成本加入这个项目,而使用标准化流程自动配置。
为了在各个系统中提供最大的可移植性,而和操作系统之间尽可能的划清界限。
为了在服务器和系统管理方面节省资源,而部署在现代的云计算平台。
为了将开发环境和生产环境的差异降至最低,而使用持续交付实施敏捷开发。
为了保证工具、架构和开发流程不发生明显变化的前提下实现扩展,而使用容器化技术或微服务架构。