mongodb内存使用率过高问题排查

1.在生产环境中,若不限制moongo对内存的使用,会导致mongo集群内存使用率飙升。
2.物理内存和虚拟内存区别
物理内存和虚拟内存:
http://c.biancheng.net/view/6105.html
物理内存:真正的内存
虚拟内存:磁盘空间虚拟出的内存
3.内存飙升的解决方法
通过设置 config, shardcachesize的大小,限制mongo对内存的使用率
4.mongo命令:

【mongodb内存使用率过高问题排查】1.mongo查看连接数目
db.serverStatus().connections

2.使用mongos连接mongo数据库
mongo 10.201.82.18:20000
20000是mongos的启动端口而不是mongo的启动端口

3.查看集合条数
db.demo_collection.find().count();

4.查看集合索引
db.demo_collection.getIndexes()

5.查看正在进行的查询
6.查看内存使用情况
db.serverStatus().mem

7.查看当前正在进行的操作
db.currentOp()

https://www.cnblogs.com/mysql-hang/articles/10693269.html

8.
cacheSizeGb设置mongo能使用的内存
9.查看线程缓存使用的内存
db.serverStatus().tcmalloc
限制mongo内存的使用:
https://www.jianshu.com/p/20f4c18713d8



    推荐阅读