首页 > 代码库 > MongoDB性能监控

MongoDB性能监控

1、mongostat

     查看运行中的mongodb实例的统计信息

 

2、MMS(MongoDB Monitoring Service)

1)安装

     rpm -U mongodb-mms-monitoring-agent-2.1.4.51-1.i386.rpm

2)配置

  • 访问https://mms.mongodb.com/settings
  • 选择monitoring agent下对应的os ,按照说明配置即可
  • 完成后启动mms:service mongodb-mms-monitoring-agent start
  • 然后返回页面,进入setup里按照说明进行配置

 

3、mongodb profile

     类似mysql中的慢查询,mongodb的慢查询日志功能

常用查看profile的命令:

db.system.profile.find().sort({$natural:-1})   --查看最新的profile

db.system.profile.find({millis:{$gt:100}}).sort({$natural:-1}).limit(5)   --查看执行时间大于100ms的执行操作,并倒序排序取前5行

主要指标:

  • responseLength:查询返回的长度
  • nscanned:在执行查询操作的时候扫描了多少对象
  • nreturned:从查询中返回的结果对象   

分析:

  • 如果nscanned比较大,或者nscanned比nreturned大很多,说明数据库扫描了很多对象才找到目标对象,因此需要为查询条件建立索引。
  • 当返回的结果集很大即responseLength值大时,会是的性能下降,在做find查询时需要添加第二个查询参数,只获取需要显示的字段。

 

4、explain

     执行计划

 

5、最大连接数

  •     db.serverStatus().connections;
  •     mongodb的最大连接数 = current数值 + available数值
  •     启动里面可以加参数 --maxCounts=3000

 

 

参阅:

MongoDB基本管理命令:http://blog.csdn.net/shirdrn/article/details/7105539

MongoDB性能篇:http://www.cnblogs.com/oubo/archive/2012/02/22/2394666.html

MongoDB应用篇:http://www.cnblogs.com/oubo/archive/2012/02/22/2394665.html

MongoDB基础篇:http://www.cnblogs.com/oubo/archive/2012/02/21/2394663.html