乐趣区

关于后端:AB-测试

什么是 AB 测试

对于什么是 A / B 测试,Wikipedia 定义如下: wikipedia A/B_testing

中文探讨有些也很全面: 什么是 A/B 测试?

为什么要有 A / B 测试

A/B 测试能疾速帮忙咱们做出正确决定, 简略的讲就是某一环境同时会有 A / B 两种 (也能够是多种) 版本的服务同时运行, 它们在性能需要上讲是一样的, 然而在细节上又有显著的区别. 为了精确的通过一些维度比照这些服务的优劣, 那么就须要将这些服务看成雷同性能下的不同实现, 它们相互作为参考系. 通过同时承受理论流量的实战测验, 在这个过程中收集数据, 评估出最优的计划来最大化团队的利益.

在 AWS Lambda 金丝雀公布中咱们探讨了 CI/CD 过程平滑性的重要性, 技术术语和操作流程. 其中 CI/CD 过程中会产生灰度, 也就是一部分是旧版本一部分是新版本. 这时这个刹时状态就很像 A / B 测试的继续状态(稳态). 然而它们是不一样的概念.
A/ B 测试 和 滚动公布的比照

AB 和金丝雀公布的区别和分割

差别

  • 指标不同

    • A/B 测试的指标在: 怎么样精确的评估 A / B 计划的优劣并选出最优解
    • AWS Lambda 金丝雀公布 的指标在: 怎么平安的平滑的将以后服务由 A1 过渡到 A2
  • 两个版本的关系不同

    • A/B 测试中两个版本是竞争关系或比照关系
    • AWS Lambda 金丝雀公布中 2 个版本是先后关系或承接关系
  • 工夫不同

    • A/B 测试中两个版本是并行服务的, 在运行期是没有代替关系的
    • AWS Lambda 金丝雀公布中 2 个版本是串行的, 一个版本的目标是取代上一个版本

共同点

  • 流量调配

    • 在 AWS Lambda 金丝雀公布和 A / B 测试中流量必然会在多个版本间做肯定规定的调配. 比方 10% 调配到 A 而残余的调配到 B
    • A/B 测试 中有些团队须要验证新版本的稳定性. 那么这时 A /B 测试 中 A / B 版本就是后续是否持续进行 AWS Lambda 金丝雀公布的判据, 反过来 AWS Lambda 金丝雀公布产生了 A /B 测试

本文原创链接:AB 测试

退出移动版