知识卡片
快速失败大声失败要求把验证前置到流程最开始
内容
渲染引擎的哲学是快速失败、大声失败:任务开始前先检查字体、背景图、alpha遮罩等资源是否真实存在,缺了立刻报错终止,而非流程走到一半才发现——16步管道前5步都是纯验证。问题在代价最小时被发现。书中也记录反例:没为渲染结果预订磁盘空间的漏洞未被前置检查覆盖,直到磁盘写满才失败,说明验证要越靠前越全面。
参考来源
- 位置:《架构之美》第4章《记忆留存》4.3.7节《渲染工厂》"快速失败"(源文件:程序之美系列套装(6册)团队之美、项目管理之美、架构之美、数据之美、测试之美、安全之美/_epub-src/OEBPS/Text/part0134.xhtml)
- 结论依据:原文明确"我们采用的哲学是'快速失败、大声失败'。当渲染引擎从PCS取出一项任务时,它会检查所有指令,验证该任务需要的所有资源都实际存在……在渲染管道的16个步骤中,前5个都是进行验证",并记录了未覆盖的磁盘空间检查案例。
- 原始内容:我们采用的哲学是"快速失败、大声失败"。当渲染引擎从PCS取出一项任务时,它会检查所有指令,验证该任务需要的所有资源都实际存在……在渲染管道的16个步骤中,前5个都是进行验证。