一、定义

12因素应用为构建 SaaS应用(网络应用服务程序)提供了方法论:

  1. 使用标准化流程自动配置,从而使新的开发者花费最少的学习成本加入这个项目。
  2. 和操作系统之间尽可能的划清界限,在各个系统中提供最大的可移植性
  3. 适合部署在现代的云计算平台,从而在服务器和系统管理方面节省资源。
  4. 将开发环境和生产环境的差异降至最低,并使用持续交付实施敏捷开发。
  5. 可以在工具、架构和开发流程不发生明显变化的前提下实现扩展。
  6. 这套理论适用于任意语言和后端服务(数据库、消息队列、缓存等)开发的应用程序。

二、12因素

  1. 基准代码
    一份基准代码,多份部署。(用一个代码库进行版本控制,然后进行多次部署)
  2. 依赖
    显式地声明和隔离相互之间的依赖
  3. 配置
    在环境中存储配置
  4. 后端服务
    把后端服务当作一种附加资源
  5. 构建,发布,运行
    严格分离构建和运行
  6. 进程
    以一个或多个无状态进程运行应用
  7. 端口绑定
    通过端口绑定提供服务
  8. 并发
    通过进程模型进行扩展
  9. 易处理
    快速地启动,优雅地终止,最大程度上保持健壮性
  10. 开发环境与线上环境等价
    尽可能的保持开发,预发布,线上环境相同
  11. 日志
    把日志当作事件流
  12. 管理进程
    后台管理任务当作一次性进程运行





http://xzh.i3geek.com
分类: 架构师笔记

爱唠叨的老鱼

爱唠叨的老鱼

技术经理,个人站长,创业者

0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据