mongoperf

在本页面

Synopsis

mongoperf是独立于 MongoDB 来检查磁盘 I/O 性能的 Util。

它对随机磁盘 I/O 的测试进行计时并显示结果。除 MongoDB 之外,任何情况下都可以使用mongoperfmmf true模式是完全通用的。在这种模式下,它有点类似于bonnie++之类的工具(尽管 mongoperf 更简单)。

使用 JavaScript 文档为mongoperf指定选项。

从系统命令行运行mongoperf,而不是mongo shell。

Options

mongoperf < config

在此示例中,config是包含类似于以下示例的 JSON 文档的文件名:

{
  nThreads:<n>,
  fileSizeMB:<n>,
  sleepMicros:<n>,
  mmf:<bool>,
  r:<bool>,
  w:<bool>,
  recSizeKB:<n>,
  syncDelay:<n>
}

有关每个字段的文档,请参见Configuration Fields部分。

Configuration Fields

默认值: 1

定义测试中将使用的mongoperf线程数。要使系统的存储系统饱和,您将需要多个线程。考虑将nThreads设置为16

默认值: 1 兆字节(即 10242 字节)

测试文件大小。

默认值: 0

mongoperf将暂停指定的sleepMicros数除以nThreads

默认值: false

mmf设置为true以使用内存 Map 文件进行测试。

Generally:

默认值: false

r设置为true以执行读取作为测试的一部分。

rw必须是true

默认值: false

w设置为true以执行写操作,并将其作为测试的一部分。

rw必须是true

*类型:*整数。

默认值: 4 kb

每个写入操作的大小。

默认值: 0

磁盘刷新之间的秒数。 mongoperf.syncDelay与_3 的--syncdelay类似。

syncDelay控制mongoperf多久执行一次用于测试的内存 Map 文件的异步磁盘刷新。默认情况下,mongod每 60 秒执行一次此操作。使用syncDelay测试此类型操作的基本系统性能。

只能将syncDelaymmf设置为true结合使用。

默认值0禁用此功能。

Use

mongoperf < jsonconfigfile

jsonconfigfile替换为mongoperf配置的路径。您也可以采用以下形式调用mongoperf

echo "{nThreads:16,fileSizeMB:10000,r:true,w:true}" | mongoperf

在此操作中:

考虑使用iostat,如以下示例中所述,以在测试期间监视 I/O 性能。

iostat -xtm 1
首页