如何忽略ab(apache bench)中的超时?

问题描述 投票:0回答:2

我在 Web 服务上使用 apache bench 运行基准测试。我知道测试期间有 1-2 个请求会超时(这是一个 Web 框架问题)。当超时发生时

ab
退出并显示消息
apr_pollset_poll: The timeout specified has expired (70007)
并且不显示结果。我想获得测量结果,忽略这些超时测试(或也对它们进行计数,但仅使用超时值作为响应时间)。可以用
ab
吗?

编辑:我使用的命令是

ab -n 1000 -c 10 http://localhost:80

我查看了

ab
来源,从我所看到的来看,不可能忽略这些错误。也许有一个叉子可以实现这样的功能?

benchmarking load-testing apachebench
2个回答
6
投票

默认超时时间为 30 秒。您可以使用

-s
更改此设置:

ab -s 9999 -n 1000 -c 10 http://localhost:80

0
投票

-r
选项表示“不要在套接字接收错误时退出”(请参阅文档此处)。

这会禁用 ab 默认使用的“第一次失败时退出”行为,以便记录网络错误(包括超时、连接重置、TLS/SSL 错误等),但无论如何测试都会继续。

© www.soinside.com 2019 - 2024. All rights reserved.