mongoperf用法
mongoperf是mongoDB自带工具,用于评估磁盘随机IO性能。
使用方法
作用:用于部署前,评估mongodb所在存储的IO性能
用法:mongoperf <conffile,从配置文件conffile中读取参数。
配置文件是Json格式,包含如下参数:
{
nThreads:<n>,
fileSizeMB:<n>,
sleepMicros:<n>,
mmf:<bool>,
r:<bool>,
w:<bool>,
recSizeKB:<n>,
syncDelay:<n>
}
参数说明:
nThreads
表示IO线程数<n>,默认值是1。为了测试时达到系统最佳性能,推荐设置为16,也可以更大(参考系统配置)。
fileSizeMB
表示测试文件的大小,单位是MB,默认是1MB。
sleepMicros
默认值是0,sleepMicros/nThreads表示每次操作的间隔(sleep)时间。
mmf
默认值是false。
设置为false时,用direct IO模式,每次直接写物理磁盘,不会有缓存和合并效果。
可用于测试大文件的随机IO性能。
设置为true时,写到内存映射文件,一般用于测试系统缓存性能。
- r
默认值是false。设置为true时,表示有read操作。
- w
默认值是false。设置为true时,表示有write操作。
recSizeKB
默认值是4kb,表示每次写入的数据块大小。
syncDelay
默认值是0,表示不生效。
设置为非0值时,仅当mmf设置为true时才生效。表示数据从内存刷到磁盘的时间间隔。如果有内存缓存,mongod默认60s间隔将缓存刷到磁盘。
用法举例:
# 16个io线程
# 随机读写10GB的测试文件
echo "{nThreads:16,fileSizeMB:10000,r:true,w:true}" | mongoperf
执行结果:
# 先创建10GB的测试文件
9GB...
testing...
...
# IO跑满后,得出ops和吞吐量
new thread, total running : 16
read:1 write:1
7670 ops/sec 29 MB/sec
# 可以使用iostat观察磁盘io状态
iostat -xmt 1
参考意义:
用于评估mongodb的性能上限。
执行echo "{nThreads:16,fileSizeMB:10000,w:true}" | mongoperf结果:
5205 ops/sec 20 MB/sec
可以预估在该系统下,16线程每秒可成功操作5205次。
mongoperf用法的更多相关文章
- 使用mongoperf评估磁盘随机IO性能
用法举例: # 16个io线程 # 随机读写10GB的测试文件 echo "{nThreads:16,fileSizeMB:10000,r:true,w:true}" | mong ...
- EditText 基本用法
title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- python enumerate 用法
A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 【JavaScript】innerHTML、innerText和outerHTML的用法区别
用法: <div id="test"> <span style="color:red">test1</span> tes ...
- chattr用法
[root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...
随机推荐
- jquery 键盘回车事件
<input id="search" placeholder="输入要领用的资产条码" id="scanCode" type=&quo ...
- Caffe初试(二)windows下的cafee训练和测试mnist数据集
一.mnist数据集 mnist是一个手写数字数据库,由Google实验室的Corinna Cortes和纽约大学柯朗研究院的Yann LeCun等人建立,它有60000个训练样本集和10000个测试 ...
- 【转】B-树和B+树的应用:数据搜索和数据库索引
B-树 1 .B-树定义 B-树是一种平衡的多路查找树,它在文件系统中很有用. 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树: ⑴树中每个结点至多有m 棵子树: ⑵若根结点不是叶子 ...
- mysql插入速度
请参考 http://www.3lian.com/edu/2013/07-15/80916.html 分表查询 select * from ( select * from user0 un ...
- ldd 命令用于判断某个可执行的binary档案含有什么动态链接库(so)
[root@NB ok]# ldd /bin/ls linux-vdso.so. => (0x00007ffd7dbf6000) libselinux.so. => /lib64/libs ...
- 带callback的future实现
jdk暂时不支持,所以只有自己实现带callback的future. 完成后callback的 final TaskPromise promise = new DefaultTaskPromise() ...
- UltraEdit 注册机使用说明
请断开网络连接(或直接拔掉网线)后执行: 安装完成后,点击弹出界面的“注册”按钮,然后直接点击“激活”,此时UltraEdit检测到网络断开则弹出界面提示“脱机激活”,此时启动注册机,并将UltraE ...
- ajax传递array参数
var ticketId = new Array(); for(var i = 0; i < checkboxes.length; i++) { ticketId.push(checkboxes ...
- 利用WCF创建简单的RESTFul Service
1):用VS2013创建一个WCF的工程,如下图所示: 2):我们来看一下默认状态下的config文件内容,这里的内容我们会再后续的步骤中进行修改 <?xml version="1.0 ...
- 【Android】achartengine的柱状图和饼状图的使用
本文介绍了android中如何使用achartengine绘制饼图和柱状图,请分别尝试饼图和柱状图,曲线图. 先看效果图: 先看看获取数据: Workbook workbook = Workbook. ...