【问题标题】:how to limit request per second in apache benchmark tools如何在 apache 基准测试工具中限制每秒请求
【发布时间】:2017-04-06 13:27:36
【问题描述】:

我正在尝试对我的 Spring Boot 应用程序进行压力测试,但是当我运行以下命令时,ab 正在做的是试图给出我的应用程序可以容纳的最大值的结果。但我需要检查我的应用程序是否可以每秒保持特定请求。

ab -p req.json -T application/json -k -c 1000 -n 500000 http://myapp.com/customerTrack/v1/send

上面命令给出的每秒请求数是 4000,但实际上,我的应用程序中缓冲了很多记录,这意味着它不能容纳那么多 rps。 谁能告诉我如何在ab工具中设置每秒的特定请求?谢谢!

【问题讨论】:

    标签: spring qa stress-testing


    【解决方案1】:

    我认为你不能从 ab 那里得到你想要的东西。还有很多其他工具。

    这是一个简单的,可能完全符合您的要求。

    https://github.com/rakyll/hey

    为了将速率限制为每秒 100 个请求,下面的命令应该可以工作。

    hey -D req.json -T application/json -c 1000 -q 100 -n 500000 http://myapp.com/customerTrack/v1/send

    【讨论】:

      【解决方案2】:

      Apache Bench 是单线程程序,只能利用客户端计算机上的一个处理器。在极端情况下,如果您的测试参数超出工具运行环境的能力,该工具可能会歪曲结果。根据您的描述,rps 已经达到您的硬件限制。

      我的应用程序中缓冲了很多记录,这意味着它不能容纳那么多 rps

      单机每秒请求数很难控制。 你可以从这里找到更好的性能测试工具HTTP(S) Benchmark Tools

      如果您有预算,可以试试goad,这是一个 AWS Lambda 驱动的高度分布式负载测试工具,内置于 Go 中,用于 2016 年 Gopher Gala。 Goad 允许您通过在多个区域同时使用 AWS Lambda 来对来自世界各地的网站进行负载测试,同时只需花费很少的一分钱。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-22
        • 1970-01-01
        • 1970-01-01
        • 2014-06-15
        • 2010-09-12
        相关资源
        最近更新 更多