首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何正确使用包围来测试GET请求?

如何正确使用包围来测试GET请求?
EN

Stack Overflow用户
提问于 2013-10-16 08:19:29
回答 2查看 7.3K关注 0票数 6

我使用包围对本地HTTP服务进行基准测试:

代码语言:javascript
复制
siege -q -b -t 30S -c 64 "http://localhost:8888/endpoint?params=abc"

基准测试结果提供了每秒500个事务吞吐量。

但是,当我通过同时启动8个curl循环对服务进行基准测试时,同一个端点提供了每秒数千次的吞吐量。

我的围攻有什么不对?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-23 18:42:30

有几件事可能会影响你的考试。如果您将并发-c设置为8以匹配您正在用curl测试的并发流数,则检查得到了什么。您的站点可能无法处理大量并发用户。

此外,在默认情况下,围城并不能维持生命(我不认为至少)。由于不使用此选项,服务器和客户端必须设置和拆卸套接字,这可能会很昂贵。您应该能够设置标头并授予它权限(siege -H "Connection: Keep-Alive")。

另外,我发现在基准测试中使用几个工具是有用的,一旦你开始攻城工作,我就会使用AB (apache )、httperf和保持手动卷曲测试。

票数 8
EN

Stack Overflow用户

发布于 2017-06-02 04:20:55

您可以在命令行中使用bash进程替换来创建动态siegrc文件:

代码语言:javascript
复制
siege -R <(echo connection = keep-alive) ...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19398377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档