mongodb更新比较频繁,性能下降的厉害怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb更新比较频繁,性能下降的厉害怎么办相关的知识,希望对你有一定的参考价值。
必须使用索引,因为更新的第一步就是查询,所以要去查询日志,比如:
db.system.profile.find(nscanned:"$gt":1,ns:"$ne":"xxx.system.profile",op:1,ns:1,query:1,millis:1,nscanned:1,reslen:1), 可以找出扫描数超过一行的. 和没有使用索引的, 记住索引永远都是mongoDB的最大问题.
索引会带来更多的问题. 非常大的内存占用 和 cpu开销.这也是更新时越来越慢的原因之一, 如果更新频繁,插入不多的话,请使用 _id 作为主键, 直接在业务中拼凑_id, 查询时直接使用_id.
更新的时候 不能直接更新整个bson,要局部更新字段, 这样流量会小下来.
查看瓶颈到底是在io 还是内存 还是 cpu. 如果数据量或者索引的容量超过了物理内存大小.mongoDB的效率是要降低一个量级的
BSON是一个轻量级的二进制数据格式。
MongoDB能够使用BSON,并将BSON作为数据的存储存放在磁盘中。
当Client端要将写入文档,使用查询等等操作时,需要将文档编码为BSON格式,然后再发送给Server端。同样,Server端的返回结果也是编码为BSON格式再放回给Client端的。本回答被提问者和网友采纳
以上是关于mongodb更新比较频繁,性能下降的厉害怎么办的主要内容,如果未能解决你的问题,请参考以下文章
生产故障|Kafka ISR频繁伸缩缩引发性能急剧下降原因分析
生产故障|Kafka ISR频繁伸缩缩引发性能急剧下降原因分析