知识卡片
可扩展性设计的核心悖论——预测变化
内容
良好的可扩展性依赖”正确预测变化”,但天然两难:每个点都考虑扩展性,架构会臃肿;完全不考虑,需求一来就要推倒重构。预测本身还会出错——需求迟迟不来,之前的设计就白费了。这没有通用标准,只能靠经验和业务判断,这也是架构评审常吵得面红耳赤的原因。发散:答案不该是技术上”能不能”,而应是业务上”变化概率多大、不做扩展性设计的改造成本多高”。
参考来源
- 位置:《从0开始学架构》第8章《06|复杂度来源:可扩展性》"预测变化"一节(源文件:_epub-src/OEBPS/Text/part0007_split_001.html)
- 结论依据:原文明确"如果每个点都考虑可扩展性,架构师会不堪重负,架构设计也会异常庞大且最终无法落地。但架构师也不能完全不做预测,否则可能系统刚上线,马上来新的需求就需要重构",并说明"如何把握预测的程度和提升预测结果的准确性……没有通用的标准可以简单套上去,更多是靠自己的经验、直觉"。
- 原始内容:如果每个点都考虑可扩展性,架构师会不堪重负,架构设计也会异常庞大且最终无法落地。但架构师也不能完全不做预测,否则可能系统刚上线,马上来新的需求就需要重构……架构设计评审的时候经常会出现两个设计师对某个判断争得面红耳赤的情况,原因就在于没有明确标准。