核心要点

  • 随机分流:按用户/请求 ID 哈希稳定分桶,保证对照组与实验组同质、互不污染。

  • 指标体系:定一个核心指标(如转化率)+ 多个护栏指标(延迟、错误率、留存),护栏退化即止损。

  • 统计严谨:事前算样本量与最小可检测效应(MDE),用置信区间/假设检验判断显著性,避免提前看数据。

  • 渐进放量:先 canary(1%)验证无故障,再 5%→20%→50% 逐步 ramp,配自动回滚。

标准回答

A/B 测试 vs 灰度发布

灰度发布关注「能不能安全上线」(先小流量验证稳定性,再放量);A/B 测试关注「新模型是不是更好」(随机对照、统计显著)。生产中通常先灰度验证工程稳定,再做 A/B 验证业务收益。

随机分流

按用户或请求 ID 哈希稳定分桶,保证同一用户始终落同一组,避免体验漂移和组间污染。注意分流要均衡(协变量平衡),必要时分层抽样。

指标设计

设一个核心指标(如点击率、转化率)和一组护栏指标(延迟 P99、错误率、用户留存、成本)。即便核心指标提升,护栏退化也应止损。事前估算样本量和最小可检测效应,跑足周期(覆盖周末等周期性),用置信区间判断显著性,杜绝「偷看」提前停。

渐进发布

canary 1% 先验证无 5xx/超时,再 5%→20%→50% 逐步 ramp。接入实时监控告警,护栏触发自动回滚。

常见误区

⚠️ 常见踩坑

别在结果未显著时反复偷看数据提前下结论(多重检验放大假阳性)。也别忽视护栏指标——只看核心指标涨了就全量,可能延迟或成本已悄悄恶化。分流粒度错误(如按请求而非用户)会导致同一用户体验来回横跳。

追问

追问 1A/B 测试需要多大样本量?

由基线指标、最小可检测效应(MDE)、显著性水平 α(常 0.05)和功效 1−β(常 0.8)决定。MDE 越小、基线方差越大,所需样本越多。上线前用功效分析算出每组样本量并据此估测试时长。

追问 2canary 和 A/B 测试有什么区别?

canary 是部署策略,目的是用小流量快速发现工程故障(崩溃、延迟、错误率),关注稳定性,时间短;A/B 测试是评估方法,随机对照、统计显著地衡量业务指标差异,时间长。二者常组合:先 canary 保稳,再 A/B 验收益。

追问 3怎么自动判断该回滚?

给护栏指标设阈值与基线对比(如错误率超 X%、P99 延迟超 Y、核心指标显著下跌),结合实时监控做自动告警与回滚。回滚要快且幂等,配合特征开关秒级切流,避免人工介入延误。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。