REL07-BP04 对工作负载进行负载测试
采用负载测试方法来衡量扩展活动能否满足工作负载要求。
持续开展负载测试,这一点很重要。负载测试用于发现工作负载的断点并测试工作负载的性能。利用 AWS,您可以轻松设置能够模拟生产工作负载规模的临时测试环境。在云中,您可以根据需要创建一套生产规模等级的测试环境,完成测试,然后停用资源。由于测试环境只需在运行时付费,您模拟真实环境的成本仅为本地测试成本的一小部分。
生产中的负载测试还应该被视为 GameDay 活动的一部分,因为在客户使用量降低的那几个小时内,在场的所有员工都忙于解读结果与处理任何出现的问题,生产系统承受着很大的压力。
常见反模式:
-
对与生产采用不同配置的部署执行负载测试。
-
仅对单个工作负载分段(而非整个工作负载)执行负载测试。
-
使用请求子集,而不是具有代表性的实际请求集执行负载测试。
-
对超出预期负载的较小安全系数执行负载测试。
建立此最佳实践的好处:您知道架构中哪些组件会在负载下失败,而且能够确定要监控哪些可指示您即将达到该负载的指标,从而及时解决问题,防止故障影响。
在未建立这种最佳实践的情况下暴露的风险等级:中
实施指导
执行负载测试,确定工作负载的哪些方面表明您必须添加或移除容量。负载测试应具有您在生产中接收的流量类似的代表性流量。增加负载,同时监视所有已检测指标,以便确定哪种指标指示何时必须添加或移除资源。
-
-
确定请求组合。您可能拥有不同的请求组合,因此应当在确定流量组合时查看不同的时间范围。
-
实施负载驱动程序。您可以使用自定义代码、开源或商用软件来实施负载驱动程序。
-
最初使用小容量进行负载测试。通过将负载降低到较小容量(可能小到一个实例或容器),可能会有立竿见影的效果。
-
针对更大的容量进行负载测试。分布式负载的效果会有所不同,因此您必须对尽量接近生产环境的目标进行测试。
-
-
资源
相关文档:
相关视频: