The Twelve Factors
2021-11-01 09:35:45 0 举报
AI智能生成
微服务设计12条准测
作者其他创作
大纲/内容
Build, Release & Run
stages
Build
automatically build
Release
rollback
release Id
Run
app uses strict separation between the build, release, and run stages
Processes
stateless & share nothing
Concurrency
processes are a first class citizen
handle diverse workloads by assigning each type of work to a process type
scale out
never daemonize or write PID files
Dev/prod parity
The time gap
The personnel gap
The tools gap
Logs
never concerns itself with routing or storage of its output stream
Admin processes
run in an identical environment as the processes of the app
same dependency isolation techniques should be used on all process types
Codebase
App is always tracked in a version control system
A codebase is any single repo
one-to-one correlation between the codebase and the app
Dependence
app never relies on implicit existence of system-wide packages
Config
strict separation of config from code
app stores config in environment variables
Backing Services
app makes no distinction between local and third party services
Port binding
self-contained
exports as a service by binding to a port
Disposability
app’s processes are disposable, meaning they can be started or stopped at a moment’s notice
Processes shut down gracefully when they receive a SIGTERM signal from the process manager
Processes should also be robust against sudden death
收藏
0 条评论
下一页