PERF01-BP06 使用基准测试来推动制定架构决策 - 性能效率支柱

PERF01-BP06 使用基准测试来推动制定架构决策

对现有工作负载的性能进行基准测试,了解工作负载在云中的表现情况,并根据这些数据推动制定架构决策。

常见反模式:

  • 启用普通的基准测试,而这些基准测试并不能反映出工作负载的特征。

  • 将客户反馈和看法作为唯一的基准。

建立此最佳实践的好处:对当前实现进行基准测试可以衡量性能改进。

在未建立这种最佳实践的情况下暴露的风险等级:

实施指导

结合使用基准测试与综合测试,评测工作负载组件的性能。相比负载测试,基准测试通常可以更快速地设置,并且适用于评估特定组件的技术。基准测试通常在新项目开始时进行,因为此时您还没有用于进行负载测试的完整解决方案。

您可以构建自己的自定义基准测试,也可以使用行业标准测试(如 TPC-DS),对工作负载进行基准测试。行业基准测试适用于比较不同的环境。对于在架构中想要执行的特定类型操作,自定义基准测试十分有用。

进行基准测试时,为了确保获得有效的结果,预热测试环境尤为重要。多次运行同一基准测试,确保捕获一段时间内的所有差异。

由于基准测试运行速度通常比负载测试快,它们可以在部署管道的早期使用,并能更快地提供有关性能偏差的反馈。评估组件或服务的重要更改时,可以使用基准测试快速了解是否有合理的理由来执行更改。结合使用基准测试与负载测试这一点很重要,因为负载测试能告知工作负载在生产环境中的表现如何。

实施步骤

  • 规划和定义:

    • 为基准测试定义目标、基准、测试场景、指标(如 CPU 利用率、延迟或吞吐量)和 KPI。

    • 关注用户在用户体验方面的要求,以及响应时间和可访问性等因素。

    • 确定适用于工作负载的基准测试工具。可以使用与工作负载兼容的 Amazon CloudWatch 等 AWS 服务或第三方工具。

  • 配置和检测:

    • 设置环境并配置资源。

    • 实施监控和日志记录来捕获测试结果。

  • 基准测试和监控:

    • 执行基准测试并在测试期间监控指标。

  • 分析和记录:

    • 记录基准测试过程和测试结果。

    • 对结果进行分析,确定瓶颈、趋势和需要改进的方面。

    • 利用测试结果制定架构决策并调整工作负载。这可能包括更改服务或采用新功能。

  • 优化并重复:

    • 根据基准测试调整资源配置和分配。

    • 调整后重新测试工作负载,验证改进情况。

    • 记录经验教训,并重复该过程,确定其他需要改进的方面。

资源

相关文档:

相关视频:

相关示例: