复习-12Factor方法论

Mon Jan 1, 0001

100 Words|Read in about 1 Min
Tags: Devops  

今天继续复习了一下12Factor方法论,更深一步了解其精华所在:

1.微服务。
标准:子系统以及其代码,可以独立部署。

2.依赖声明与环境隔离。
很多研发很不讲究“代码卫生”,这点作为SRE非常BS。

3.配置存储在Unix环境变量中。
这点在现实中实现起来有好有坏,研发人员对配置变量的管理和规划需要提前做出存储计划。

4.外部db、cache以及其他子系统的依赖声明成资源。
需要研发人员有整体全局意识,不能只顾某个算法的实现、某个串的序列号结果,而不顾全大局。

5.严格区分打包和运行环境。

6.应用作为无状态的进程运行。sticky session必须被避免哦

7.通过绑定端口对外提供服务。

8.通过多进程模型进行扩容。

9.快速启动,优雅关闭。
最小化短时间启动,以前有个恶劣的程序,每次启动要30-45分钟左右,简直是灾难。

10.开发、测试、部署环境尽量接近。

11.log当事件流集中处理。

12.一次性的系统管理任务。

12-factors原文

I. 基准代码
一份基准代码,多份部署
II. 依赖
显式声明依赖关系
III. 配置
在环境中存储配置
IV. 后端服务
把后端服务当作附加资源
V. 构建,发布,运行
严格分离构建和运行
VI. 进程
以一个或多个无状态进程运行应用
VII. 端口绑定
通过端口绑定提供服务
VIII. 并发
通过进程模型进行扩展
IX. 易处理
快速启动和优雅终止可最大化健壮性
X. 开发环境与线上环境等价
尽可能的保持开发,预发布,线上环境相同
XI. 日志
把日志当作事件流
XII. 管理进程
后台管理任务当作一次性进程运行

See Also

Mon Jan 1, 0001

100 Words|Read in about 1 Min
Tags: Devops