知识卡片
预言的脆弱性
内容
用模型做预言(如预测系统会死锁或某项性能指标)比单纯文档化设计投入更大,因为很小的细节遗漏都可能让预言失真。书中提到一个真实案例:作者朋友构建了预言Web服务性能的模型,但预言完全错了,因为实际请求量比模型假设的增长速度快得多。教训是:为了精确预言而构建的模型必须足够详细,而这份详细本身就是一笔可观的成本,需要权衡是否值得投入。
参考来源
- 位置:《恰如其分的软件架构》第16章《结论》16.1.3节《有效建模》(源文件:_epub-src/OEBPS/text00174.html)
- 结论依据:原文举例说明作者朋友构建的Web服务性能预言模型因实际请求增长远超模型假设而完全失效,用以说明预言式建模比单纯文档化设计的成本和风险都更高。
- 原始内容:使用架构模型来预先发现问题,同样是一件很困难的事情,这要比通过简单建模来文档化设计投入更多,因为很小的细节都有可能使预言变形。我的一个朋友构建了一个预言Web服务性能的模型。然而,他的性能预言完全错了,因为相比于模型中的预言,实际进入系统的请求呈现出爆炸式的增长。