问题标签 [wrk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
349 浏览

testing - 我如何确定 wrk 针对不同的配置文件 ID?

我正在做性能测试并第一次使用 wrk。我的目标是将请求发送到不同的配置文件 ID,因为我怀疑正在测试的平台缓存相同的请求,以便提高响应时间。URL 看起来像这样:

http://some_url:some_port/cxs/profiles/ ...

制作了一个 LUA 脚本来随机化配置文件 ID,如下所示:

我的 wrk 请求如下所示:

有没有办法确保 wrk 真的针对不同的个人资料 ID?因为没有脚本响应时间变化不大

0 投票
1 回答
3954 浏览

sockets - wrk HTTP 基准测试工具中如何定义读写套接字错误?

我正在使用wrk HTTP 基准测试工具来测试服务器。我收到 READ、WRITE 以及 CONNECTION 和 TIMEOUT 错误。

我的理解是:

  • CONNECTION 错误,是由拒绝 TCP 连接引起的。这可能涉及连接链中的每个元素(客户端、ISP 和服务器)。
  • TIMEOUT 错误,是由于主机在一定时间内未能响应请求而引起的。

但是 READ 和 WRITE 错误呢?

如果有人能指出一个好的资源的方向,我真的很感激?

0 投票
1 回答
104 浏览

node.js - 使用 nginx 作为负载均衡器的意外测试结果

我在以下场景中对 nginx/node.js 拓扑进行基准测试:

  1. 直接对单个 node.js 服务器进行基准测试
  2. nginx 后面的基准测试 2 node.js 服务器(RR 负载平衡)

对于这两个基准,“wrk”与以下配置一起使用:

所有 node.js 实例都是相同的。在每个 http GET 请求上,它们迭代给定的数字“n”并在每个循环中增加一个变量。

当我执行测试用例时,我得到了下面概述的有些令人惊讶的结果。我不明白,为什么双 node.js 设置(拓扑 2)在 100 万次迭代中表现更差 - 它甚至比拓扑 1 上的相同 100 万次循环更差。

1037 req/s(单次)与 813 req/s (LB)

我当然希望有一点开销,因为单个操作在 node.js 实例前面没有 nginx - 但测试结果看起来真的很奇怪。

具有 10 和 500 万次迭代的调用似乎运行良好,因为吞吐量的增加符合预期。

这种行为有合理的解释吗?

测试在单台计算机上执行;每个 node.js 实例都在侦听不同的端口。

Nginx 使用标准配置,除了:

  • 端口 80
  • 2个上游服务器
  • proxy_pass 在“/”路由上
  • 1024(默认)Worker_connections(增加不改变结果)
0 投票
1 回答
1006 浏览

spring-boot - WRK 基准测试:请解释结果

我正在尝试执行基准阻塞与非阻塞 io。

作为一个障碍,我使用弹簧引导。

作为一个非阻塞播放框架。

I Call 端点进行 4 次远程调用(按顺序)

以下是结果:

弹簧靴

播放框架

尽管 Play 显示更高的 Requests/sec,但它有更多的错误、超时、延迟。

任何人都可以解释一下,结果中的所有这些参数是什么意思?

Requests/sec- 每秒成功的请求吗?ETC

PS:我在 MBP 2013、Intel Core i7、2.3 GHz、16GB 上运行此基准测试

0 投票
1 回答
2682 浏览

lua - wrk 执行 Lua 脚本

我的问题是,当我跑步时

只执行一次的 Lua 脚本?它只会在 URL 处将一项放入数据库。

有没有办法让它动态创建“数字”变量并不断向数据库中添加新项目,直到“wrk”命令完成测试?或者它会在测试期间继续执行脚本,创建新的“数字”变量并将其插入“wrk.body”?

抱歉,我实际上只看了几个小时的 Lua。

谢谢

0 投票
2 回答
888 浏览

url - Wrk HTTP 基准测试工具添加多个参数

我正在使用 wrk 工具进行测试,并且无法向 url 添加其他参数。现在我有它:

但是当我执行它时,我得到wrk 命令行

它在括号中给出一个数字,后跟更多数字:

[1] 121

然后执行命令但切断第二个参数。完成后,它会像往常一样返回统计信息,但有另一行:

[1] + 完成

后跟命令直到第一个参数结束。

请问各位大神帮忙看看是不是参数输入错误?

0 投票
1 回答
682 浏览

latency - wrk --latency 延迟分布的平均值

我使用 wrk 来测试我的服务

输出

但我不明白延迟分布的平均值

0 投票
0 回答
830 浏览

json - wrk 工具 - 如何将 multipart/form-data 传递给 wrk.format 函数

我正在尝试使用 wrk 生成 https 请求。如何将 multipart/form-data 请求传递给 wrk.format 函数。我的请求看起来像

如果我将上面的请求块作为代码中的 jsonBody 变量读取并作为主体参数传递给 wrk.format 函数,则 lua 中的 wrk_script 下面不起作用。

寻求专家建议

0 投票
1 回答
207 浏览

lua - lua 脚本,当通过 wrk 执行时,版本不同

我有一个 lua 脚本 test.lua,它在执行lua test.lua时执行并按预期为我提供输出,它在编译时使用 lua 5.3

但是当我通过 wrk(http 性能测试基准 brew 工具)执行相同的 test.lua 时,它达到了 lua 5.1(我的系统中没有)而不是 5.3

并且没有任何 wrk 配置试图达到 lua 5.1 。我不确定为什么它的行为不同并命中不同版本的 lua

对这种混乱的提示将不胜感激。

0 投票
0 回答
619 浏览

lua - wrk.format 中不接受标头

我正在尝试将数据发布到 API。我每次都在构建请求。我正在向wrk.format()方法添加标题。尽管标题类型是字符串,但标题不接受事件。

抛出错误:

谁能帮我这个?

提前致谢。