• Netflix提出,书名
  • 目的
    • 为了验证分布式系统在面临失控条件下,具备较强的可观测性和故障恢复能力
  • 步骤
    • 定义并测量系统的“稳定状态”
    • 创建假设
      • 破坏什么时,稳定状态没有改变
    • 模拟现实世界可能发生的事件
    • 证明或反驳假设
  • 建设
    • 引入
      • 有拥抱失败的技术文化
    • 实施
      • 定义清晰可衡量的目标
    • 推广
      • 在控制风险的前提下不断提升效率
  • 阿里混沌工程画像
    • ApplicationData
      • 进程Hang、Kill,启动异常,心跳异常,环境错误,包错误或损坏,配置错误、误删、获取超时
    • Data
      • 系统单点,异步阻塞同步,依赖超时,依赖异常,业务线程池满,监控错误,OOM
    • Runtime
      • 负载均衡失效,缓存热点,缓存限流
    • Middleware
      • 数据库热点,数据库宕机,数据同步延迟,数据库主备延迟,数据库连接满,数据库热点
    • OS
      • CPU抢占,内存抢占,内存错乱,上下文切换
    • Virtualization
      • 服务器宕机、假死,断电,超卖,混部
    • Storage
      • 磁盘满、慢、坏,不可写,不可读
    • Networking
      • 网络抖动、丢包、超时,网卡满,断网
  • 工具