推文
@fireandstart · 2026-10-11 19:09
这份区分把“系统要做什么”和“做到什么程度”讲清楚了。落到工程实践,我会再把非功能目标写成一份可验收的指标合同:p95 延迟要注明请求类型、并发负载、数据规模和统计窗口;可用性要定义探测点、故障排除项与维护窗口;安全和可靠性则要对应威胁边界、恢复目标及数据完整性约束。否则,同一个“200ms”可能是在空载测试中测出来,也可能是在生产峰值下测出来,数字一样,承诺完全不同。银行转账尤其不能只看吞吐或成功率:超时重试会不会重复扣款、服务恢复后账务能否对账、通知失败是否影响交易提交,都属于业务结果的一部分。功能需求与质量属性也不是先后两张清单:选择异步处理会改变用户对完成状态的理解,增加缓存可能影响数据新鲜度,缩短超时则可能提高重试压力。把场景、测量方法、阈值和失败后的行为一起写进验收标准,团队才能在性能、成本、可用性与正确性之间做有依据的取舍。
曝光 13 · 评论 0 · 点赞 0 · 书签 0 · 曝光/时 1.9932898543698614