我使用包围对本地HTTP服务进行基准测试:
siege -q -b -t 30S -c 64 "http://localhost:8888/endpoint?params=abc"基准测试结果提供了每秒500个事务吞吐量。
但是,当我通过同时启动8个curl循环对服务进行基准测试时,同一个端点提供了每秒数千次的吞吐量。
我的围攻有什么不对?
发布于 2013-10-23 18:42:30
有几件事可能会影响你的考试。如果您将并发-c设置为8以匹配您正在用curl测试的并发流数,则检查得到了什么。您的站点可能无法处理大量并发用户。
此外,在默认情况下,围城并不能维持生命(我不认为至少)。由于不使用此选项,服务器和客户端必须设置和拆卸套接字,这可能会很昂贵。您应该能够设置标头并授予它权限(siege -H "Connection: Keep-Alive")。
另外,我发现在基准测试中使用几个工具是有用的,一旦你开始攻城工作,我就会使用AB (apache )、httperf和保持手动卷曲测试。
发布于 2017-06-02 04:20:55
您可以在命令行中使用bash进程替换来创建动态siegrc文件:
siege -R <(echo connection = keep-alive) ...https://stackoverflow.com/questions/19398377
复制相似问题