![在 AWS 内部对 nginx 进行负载测试](https://linux22.com/image/601672/%E5%9C%A8%20AWS%20%E5%86%85%E9%83%A8%E5%AF%B9%20nginx%20%E8%BF%9B%E8%A1%8C%E8%B4%9F%E8%BD%BD%E6%B5%8B%E8%AF%95.png)
我正在尝试对 AWS 上运行的 nginx 进行负载测试。我需要尝试优化它以处理 1Gbps 的入站流量。
目前,我已经通过在 m1.large 上运行 nginx 使其达到 85Mbit/s 的峰值,另外 4 台机器使用 ab 和 -i(用于头部请求)-k(keepalives)-r(忽略失败的请求)-n 500000 -c 20000 来达到该峰值。
我正在努力从 4 台机器生成超过 85 Mbit/s 的流量,但是当我 scp 一个大文件时,网络上的流量却接近 0.25Gbit/s。
是否有任何工具或方法可用于对 nginx 进行负载测试,从而可能产生更多负载?我只对入站流量感兴趣,因此如果 DoS 工具丢弃响应,也许它可以提供帮助?
我正在处理一个非常小(40 字节)的静态资产,并且在仅使用一台负载生成器机器时,峰值处理 50K 个并发连接并获得 25k 个请求/秒。
答案1
答案2
确保告诉 AWS 您正在这样做!此外,您应该查看以下内容,并确保不会惹恼 Bezos Bit Barn。如果您因运行测试而被取消平台使用,那将是不幸的。 https://aws.amazon.com/ec2/testing/
ab 对于某些测试来说非常棒,但是还有其他不错的工具可供使用。SmartBear 的 LoadNinja 非常棒!ReadyAPI 有一些用于基于代理的测试的超级好用的钩子。有些人真的很喜欢使用 Apache 的 JMeter...