![尝试理解 sysbench](https://linux22.com/image/669384/%E5%B0%9D%E8%AF%95%E7%90%86%E8%A7%A3%20sysbench.png)
我正在尝试使用 sysbench 进行一些基本的服务器基准测试。我了解大多数选项,但我想知道是否有人可以解释 --max-requests 常规选项。
它适用于所有测试吗?它到底起什么作用?例如,如果我运行以下命令:
sysbench --test=fileio --file-total-size=100G --file-test-mode=rndrw --num-threads=8 --file-extra-flags=direct --max-requests=0 运行
在这种情况下,max-requests 起什么作用?我得到 0 表示无限制,但请求到底是什么,它们与线程等有何关系?没有任何手册页或博客解释“请求”是什么。我在 CPU 测试期间尝试过它,数字越高,我的运行时间增加越多,数字越低,我的运行时间越快。为什么?
谢谢!
答案1
在 fileio 基准测试中,max-requests 是允许的最大 I/O 操作数。例如,max-requests 指定为 100 意味着 fileio 最多可以执行 100 个 I/O 操作,无论是读取还是写入。
在 oltp 基准测试中,max-requests 是允许的 SQL 语句总数(SELECT/INSERT/UPDATE 或其他)。例如,使用默认的 10000 个请求限制意味着 oltp“简单”(只读)测试将发出最多 10000 个请求,然后退出。