测验:从症状到原因
缺少必需参数的请求返回 500 有什么问题吗?
- 5xx原木乱七八糟地堆放着
- 由于错误处理导致响应缓慢
- 防止浏览器缓存 5xx 响应
- 客户端将 5xx 作为重试目标并重复请求,这将永远失败。
客户代码中哪些类型的缺陷最常被延迟发现?
- 返回看似合理的错误值 200 的代码
- 启动后立即终止的代码
- 抛出异常并返回 500 的代码
- 使用大量内存的代码
文档和代码的行为是不同的。什么是正确的态度?
- 相信文档中所写的内容是真实的并修复代码
- 相信代码是真实的并修复文档。
- 将观察到的行为视为事实,但使用与文档不同的点作为候选错误列表。
- 丢弃两者并从头开始制作一个新的。
当有 3 个元素时,计算平均值的函数是正确的,而当只有 1 个元素时,计算平均值的函数是错误的。最可能的原因是什么?
- 除法数与元素数不一致。
- 浮点误差
- 缺少排序
- 输入解析不正确。
有一天,批处理脚本失败了。客户说:“我有更多数据。”首先要检查什么?
- 运行批处理的服务器上的内存使用情况
- 剩余磁盘空间
- 新到达的数据中是否存在以前从未见过的类型的混合行?
- 脚本执行时间趋势
客户确信原因是错误的。最好的回应是什么?
- 纠正一下不清楚的地方
- 放到核对清单上,一起核对。
- 只要同意并继续前进即可。
- 创造证据并反驳它