一人工程 · solus opus

← 全部作品

一人工程canarydeploysolo engineer金丝雀测毒早期预警哲学

canary deploy 一人工程详细:完整版 solo engineer 金丝雀哲学

canary deploy 完整版 solo engineer 金丝雀哲学:金丝雀本意「下矿带金丝雀测毒气」→ 矿工救金丝雀 = solo engineer 救自己 → 早期预警系统 = solo engineer 自我检测 → 软件 canary deploy 借用 → solo engineer 自己就是 canary = 一人工程金丝雀哲学的完整版本。

canary deploy 一人工程详细:完整版 solo engineer 金丝雀哲学。

金丝雀本意 = 早期预警

金丝雀本意(英文 canary,源自 Canary Islands 鸟类):

  • 19 世纪英国煤矿用金丝雀测毒气
  • 金丝雀对毒气比人敏感(呼吸快 + 鸟代谢高)
  • 毒气泄漏时金丝雀最先倒下
  • 金丝雀倒下 = 矿工撤离信号

4 个金丝雀本意。

金丝雀本意的哲学:

  • 牺牲小(1 只鸟)= 救大(矿工生命)
  • 提前预警(金丝雀先倒)= 拯救生命
  • 1 个 canary = 1 个矿工的预警系统
  • canary 是矿工的守护者

4 个哲学。

软件 canary deploy 借用金丝雀

软件 canary deploy:

  • 借鉴金丝雀本意
  • 软件 canary = 1% 用户先体验新版本
  • 1% 用户出问题 = 早期预警
  • 出问题时只影响 1% 用户
  • 保护 99% 用户

5 个软件 canary deploy。

软件 canary 借用哲学:

  • 1% 用户 = 金丝雀
  • 1% 用户出问题 = 早期预警
  • 保护 99% 用户 = 矿工撤离
  • canary deploy 是软件工程的预警系统

4 个软件 canary 借用哲学。

solo engineer 自己就是 canary

solo engineer 自己就是 canary:

  • 大公司 canary = 1% 用户
  • solo engineer canary = solo engineer 自己
  • solo engineer 先 release 给自己 = 1% canary
  • 异常时 solo engineer 自己倒下
  • solo engineer 保护 100% 用户(用户少)

5 个 solo engineer canary。

solo engineer 自己当 canary:

  • 没有 PagerDuty 团队
  • 没有 QA team
  • 没有 incident triage meeting
  • solo engineer 自己测 = solo engineer 自己当 canary

4 个 solo engineer 自己当 canary。

大公司 canary vs solo engineer canary 对照

6 个对照:

  • canary 角色:1% 用户 vs solo engineer 自己
  • canary 数量:1% 用户(百万级)vs 1 人
  • 保护对象:99% 用户 vs 100% 用户(少)
  • 决策:9 人决策(CTO / VP / Director)vs 1 人决策( solo engineer
  • 测毒周期:几小时 vs 几天(自己测)
  • 早期预警:自动监控(Datadog / PagerDuty)vs 自己体感

6 个对照。

solo engineer canary 的代价

solo engineer canary 代价:

  • solo engineer 自己受伤 = 全部受伤
  • 没有团队分担
  • 没有备份 canary
  • solo engineer 倒下 = 项目倒下

4 个代价。

solo engineer canary 的收益

solo engineer canary 收益:

  • solo engineer 1 人决策快
  • solo engineer 直接感受用户问题
  • solo engineer 不需要团队协调
  • solo engineer 保护用户(用户少)

4 个收益。

4 个收益 vs 4 个代价 = solo engineer canary trade-off。

一人工程的金丝雀哲学

solo engineer 金丝雀哲学:

  • 金丝雀本意测毒气(早期预警)
  • 软件 canary 借用金丝雀
  • solo engineer 自己就是 canary
  • solo engineer 自我测毒 = 自我保护

4 个事实 = solo engineer 金丝雀哲学。

一人工程的金丝雀哲学总结

solo engineer 金丝雀哲学:

  • 金丝雀本意 = 测毒气 + 早期预警
  • 软件 canary = 借用金丝雀本意
  • solo engineer 自己 = solo engineer 是 canary
  • 自我测毒 = 自我保护

4 个事实 = solo engineer 金丝雀哲学的全部。

canary deploy 一人工程详细 = 金丝雀本意 + 软件借用 + solo engineer 自己 + 自我测毒 = 一人工程金丝雀哲学的完整版本。


这是 66+ 篇散文的金丝雀详细篇。Canary deploy 一人工程详细 = 金丝雀本意(19 世纪矿工测毒气)+ 软件 canary deploy(21 世纪借用金丝雀本意)+ solo engineer 自己就是 canary = 一人工程金丝雀哲学的完整版本。