面向失败设计
2022-10-06 11:38:57 11 举报
AI智能生成
面向失败设计思想
作者其他创作
大纲/内容
道
失败无处不在
硬件问题
软件bug
配置变更错误
系统恶化
超预期流量
外部攻击
依赖库问题
依赖服务问题
唯一不变的就是变化
不要写死,PM 就是为该需求而生
隔离可变性,程序员自救
定期回归,防止变质
对代码世界保持警惕
不要相信合作方的"鬼话"
不要相信注释
不要相信函数输入
不要相信基础设施
设计原则
简洁方案最优雅
开闭原则为设计总纲:抽象约束,封装变化
大量的 if-else : 以工厂 + 策略模式封装
冗长的业务工作流:以命令+责任链模式封装
历史字段类型修改:不去修改原有字段类型,而是新增字段
中途篡改对象属性:传递新字段,不改变原有的语义
“懒惰”是程序员最大的美德
平台化
自动化
单元测试最省时间
工具化
术
工种
测试同学
测试工程师
测试开发工程师
安全合规工程师
组织形式
安全生产小组
结对编程
设计
冗余设计避免单点故障
面向失败的宏观多活架构
服务能力与依赖调用自我保护
为一切不可预料的情况备好预案
自动化运维管控
精细化的监控体系
故障与攻防演练锤炼容灾应急能力
技
将面向失败当做系统设计的一部分
分布式锁的六个层次
秒杀-热点库存扣减问题
0 条评论
下一页