【问题标题】:Is Load testing with Cloudfront (CDN) is a good approach?使用 Cloudfront (CDN) 进行负载测试是一种好方法吗?
【发布时间】:2019-11-21 05:25:14
【问题描述】:

我有一个需要处理巨大流量的应用程序。该应用程序的先前版本在 15 分钟内达到了近 2,000,000 个请求。该版本没有 CDN,因此我需要为前端和后端分别部署近 50 个容器。所以现在我在我的应用程序前面添加了一个 CDN。我选择 AWS Cloudfront 作为 CDN,因为该应用程序托管在 AWS 上。

现在,我需要对这个新应用程序进行负载测试。如果我使用 Cloudfront URL 进行负载测试,它会显示 Cloudfront 提供的确切结果吗?

如果我使用负载均衡器 URL 进行负载测试并找出处理所需负载所需的服务器数量,这是否会过度配置?由于 Cloudfront 将从近 189 个边缘位置(来自 AWS 文档)为我的应用程序提供服务,因此需要那么多服务器吗?

如何找到使用和不使用 Cloudfront 可以处理的流量之间的关系?

【问题讨论】:

  • CloudFront 是一个内容交付网络,不能准确衡量您的应用程序性能。这是一个API吗?一个网络应用程序?视频流服务? AWS 允许您弹性预置资源。您是否使用 Auto Scaling 组和 CloudWatch 指标和警报来监控和自动化事情?直接针对负载均衡器进行测试将是更准确的衡量标准。

标签: amazon-web-services amazon-cloudfront load-testing cdn


【解决方案1】:

根据Cloudfront main page,负载测试 Cloudfront 本身并不是最好的主意

Amazon CloudFront 内容分发网络 (CDN) 大规模扩展并且分布在全球各地。

但是,您可以在使用和不使用 CDN 的情况下测试您的网站的性能,看看使用 Cloudfront 是否有好处/ROI,因为它不是免费提供的,您需要确保使用它是有意义的如果没有 CDN 集成,您的应用程序性能可能就足够了。

查看6 CDN Load Testing Best Practices 了解更多详情。

还要确保将 DNS Cache Manager 添加到您的测试计划中,以确保每个 JMeter 线程(虚拟用户)独立解析 ELB 的底层服务器地址,因为可能所有线程都会遇到相同的情况IP地址。

【讨论】:

  • Load Testing CloudFront(在开发者指南中)还提到了 DNS 平衡的重要性,以及其他一些注意事项。
【解决方案2】:

您可以使用 cloudfront url 进行负载测试,因为这是真实的用户场景。 请检查服务器是否启用了自动缩放。此外,您还需要在测试执行时监控负载均衡器以验证流量。

您还需要检查安全软件/过滤器设置,以了解请求的压缩和缓存标头。有时,此安全补丁/文件管理器会忽略标头,它会影响 AWS 云中的应用程序性能。

使用 AWS cloud watch 监控服务器。

【讨论】:

    猜你喜欢
    • 2012-01-04
    • 2015-05-06
    • 1970-01-01
    • 1970-01-01
    • 2022-07-29
    • 2012-03-01
    • 2020-09-07
    • 2017-02-08
    • 2019-03-10
    相关资源
    最近更新 更多