7

我有以下 curl 命令: curl -i -H "Content-Type: text/plain" -X POST -d @hundredencoded http:///aaa/bbb/message

对于负载测试,我需要运行此命令 100 次,我如何使用 CURL 执行此操作?

提前致谢。

4

2 回答 2

14

您可以使用以下脚本来实现它:

#!/bin/bash

for i in $(eval echo {1..$1})
do 
  curl -i -H 'Content-Type: text/plain' -X POST -d @hundredencoded http:///aaa/bbb/message &  
done
于 2013-05-13T10:21:13.313 回答
7

尽管问题指定为此任务使用 curl ,但我强烈建议为此使用 ab 。

ab(Apache Benchmark)是专门针对相关案例构建的工具。它允许您多次调用特定请求并定义并发。 http://httpd.apache.org/docs/2.0/programs/ab.html

您的测试将是:

ab -p post.txt -H 'Content-Type: text/plain' -n 100 -c 1 http://aaa/bbb/message

或者,甚至更短:

ab -p post.txt -T text/plain -n 100 -c 1 http://aaa/bbb/message

文件post.txt保存 POST 数据的位置。

于 2018-03-13T14:59:40.337 回答