代码之家  ›  专栏  ›  技术社区  ›  James Brady

更改apachebench每次迭代使用的POST数据

  •  15
  • James Brady  · 技术社区  · 16 年前

    我在用 ab 要进行一些负载测试,在请求之间更改提供的querystring(或POST)参数是很重要的。

    例如,我需要向URL发出请求,例如:

    http://127.0.0.1:9080/meth?param=0
    http://127.0.0.1:9080/meth?param=1
    http://127.0.0.1:9080/meth?param=2
    ...
    

    ab似乎只在启动时读取一次提供的POST数据文件,因此在测试运行期间更改其内容不是一个选项。

    有什么建议吗?

    3 回复  |  直到 16 年前
        1
  •  14
  •   ceejayoz    16 年前

    您将需要使用一个功能更全面的基准测试工具,如 jMeter 为了这个。

        2
  •  1
  •   extraplanetary    15 年前

    您还可以创建一个脚本来创建第二个脚本,其内容如下:

    ab-n 1-c 1'http://yoursever.com/method?param=0'和'; ab-n 1-c 1'http://yoursever.com/method?param=2'和'; ab-n 1-c 1'http://yoursever.com/method?param=4'和';

        3
  •  1
  •   Andrey Bosonchenko    8 年前

    以下是ab或修补程序的修补版本: http://www.andboson.com/?p=1372

    http://chrismiles.info/dev/testing/ab 也可以逐行读取多个post数据

    样品请求:

    ./ab -v1 -n2 -c1 -T'application/json' -ppostfile http://api.webhookinbox.com/i/HX6mC1WS/in/

    postfile内容:

    {"data1":1, "data2":"4"} {"data0":0, "x":"y"}

    升级2:

    也可选择 https://github.com/andboson/ab-go