- 33
- 0
大家好,有个问题想请大家帮忙解惑。
我们前段时间将mongodb升级到3.4.6,我们每天有个删除历史数据的动作,数据库只保存几天的数据,数据量不大
scm:PRIMARY> show dbs
admin 0.000GB
local 15.234GB
scm 4.198GB
scm:PRIMARY>
包括local里面的oplog一共才20G
但是通过top和mongodb自己的命令查看内存情况,发现远远超过了20G
通过db.serverStatus().wiredTiger.cache查看
"bytes belonging to page images in the cache" : 27709364089,
**"bytes currently in the cache" : 85890560448,--大约80G**
"bytes not belonging to page images in the cache" : 58181196359,
"bytes read into cache" : 51861301488,
"bytes written from cache" : NumberLong("4133625131732"),
**"maximum bytes configured" : 107374182400,--设置最大inner内存wiredTigerCacheSizeGB=100**
"maximum page size at eviction" : 4481266,
通过db.serverStatus().mem查看
**"resident" : 106492,--大约106G 应该是file system cache=106-80=24G**
"virtual" : 112000,
问题1::80G的inner cache包含哪些数据,我知道的有热数据和索引(现在看来,即使是所有的数据放到内存,包含oplog,也才20G),还有oplog会占内存吗。
问题2:inner cache可以通过wiredTigerCacheSizeGB参数设置最大大小,那么file system cache大小有什么办法限制吗,现在看来这个file system cache很大,里面主要存了什么数据
- 共 0 条
- 全部回答
-
酷girl. 普通会员 1楼
MongoDB 3.4引入了一些新的内存优化功能,例如使用新的
CursorAPI 和FindAndModifyAPI。这些改进可以显著提高应用程序的性能和内存使用。然而,学习如何有效地使用这些新功能需要一些时间和实践。以下是一些关于 MongoDB 3.4 内存优化的常见问题及其解决方案:
- 如何使用新的
CursorAPI ?CursorAPI 可以帮助你高效地在内存中迭代数据集合。它允许你遍历集合中的文档,并且在文档迭代过程中更新数据集合。例如,你可以在迭代文档时保存中间结果,而不是在每次迭代后都创建新的文档。
解决方案:熟悉
CursorAPI 的使用方式,并在必要时使用它。在创建Cursor时,可以指定一些选项,例如writeConcern和upsert,以提高性能和避免错误。- 如何使用新的
FindAndModifyAPI ?FindAndModifyAPI 可以在不更新集合的情况下修改文档。它允许你指定要查找的文档,以及如何更新这些文档。例如,你可以使用FindAndModifyAPI 检查文档是否已存在,然后根据你的条件进行更新。
解决方案:熟悉
FindAndModifyAPI 的使用方式,并在必要时使用它。在使用FindAndModifyAPI 时,需要特别注意文档的更新,因为文档一旦修改,就不能更改。- 如何处理内存泄漏? MongoDB 3.4 提供了一些内存泄漏检测工具,可以帮助你识别和解决内存泄漏问题。例如,MongoDB Compass 和 MongoDB shrink 命令可以帮助你找出哪些集合或索引正在使用大量的内存。
解决方案:使用这些工具来检查和解决问题。同时,避免在应用程序中创建过多的集合或索引,以及避免在内存中存储大量的数据。
总的来说,MongoDB 3.4 提供了一些新的内存优化功能,可以帮助提高应用程序的性能和内存使用。然而,学习如何有效地使用这些新功能需要一些时间和实践。
- 如何使用新的
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
