系统韧性:概念、要素与脆弱性解析
1. 明确关键功能
在不同的系统场景中,关键功能的界定至关重要。以股票市场 API 为例,其关键功能在于为需要实时结果的金融服务客户提供抗拒绝服务(DoS)攻击的高性能股票报价;对于医院而言,急诊室工作站抵御勒索软件攻击,确保医护人员能为患者提供充分护理则是关键功能。
明确关键功能和非关键功能,能让我们在危机中做出明智决策,必要时可暂时牺牲非关键功能以维持关键功能的运行。要设计、构建和运营更具抗攻击能力的系统,需汇聚理解系统目的和运行机制的人员。不同人对系统关键功能的定义存在差异,因此“防御者”团队应融合架构师、构建者和运营者,以准确识别系统关键功能并理解其韧性。
2. 安全边界(阈值)
安全边界是系统韧性的重要组成部分,指系统在压力下仍能保持韧性的阈值。任何系统对条件变化的承受能力都有极限,在该范围内系统能维持当前健康状态,一旦超出,系统将进入结构和行为偏离预期的新状态。
以《侏罗纪公园》为例,公园起初处于稳定状态,但一系列条件变化逐渐积累:遗传学家用青蛙 DNA 填补迅猛龙 DNA 序列,导致其可变性繁殖;园林工人种植的西印度丁香果实被剑龙误食中毒;恐龙数量估算程序设计缺陷;员工破坏安全设施和偷走应急车辆等。这些变化使公园系统越过阈值,陷入致命混乱,且越过阈值后几乎无法恢复到先前状态。
在计算机系统中,虽比控制恐龙回到指定区域容易恢复预期行为,但也受滞后性影响,即系统状态依赖于历史,难以完全恢复到先前状态。为使系统具备抗攻击韧性,需提前识别安全边界,安全混沌实验有助于确定系统对特定条件的敏感度,挖掘当前及未来可能演变的阈值。理解安全边界能更好地保护系统,避免越过阈值导致失败。同时
超级会员免费看
订阅专栏 解锁全文

1820

被折叠的 条评论
为什么被折叠?



