文档章节

mongodb 3.2配置内存缓存大小为MB/MongoDB 3.x内存限制配置

Airship
 Airship
发布于 2018/10/23 15:49
字数 668
阅读 67
收藏 0

原创文章,转载请注明: 转载自勤奋的小青蛙
本文链接地址: mongodb 3.2配置内存缓存大小为MB/MongoDB 3.x内存限制配置

mongodb占用内存非常高,这是因为官方为了提升存储的效率,设计就这么设计的。

但是大部分的个人开发者所购买的服务器内存并没有那么大,所以,我们需要配置下MongoDB的内存缓存大小,不然mongodb会占用非常多。

官方的配置缓存项处文档是这么解释的:

WiredTiger Options

--wiredTigerCacheSizeGB number

New in version 3.0.

Defines the maximum size of the internal cache that WiredTiger will use for all data.

With WiredTiger, MongoDB utilizes both the WiredTiger internal cache and the filesystem cache.

Changed in version 3.2: Starting in MongoDB 3.2, the WiredTiger internal cache, by default, will use the larger of either:

  • 60% of RAM minus 1 GB, or
  • 1 GB.

mongodb会尽可能的把所有的数据都缓存,以便提高效率。

以mongodb 3.2为例,WiredTiger内部缓存,默认会用掉

  • 60% * 内存 - 1GB
  • 1GB

当你的内存大于1GB,mongodb会用掉 内存的60% - 1GB 的内存作为缓存;

当你的内存小于1GB,mongodb会直接用掉1GB。

另外,MongoDB 3.4与3.2也是有区别的,MongoDB 3.4该配置项为:

storage.wiredTiger.engineConfig.cacheSizeGB

Type: float

The maximum size of the internal cache that WiredTiger will use for all data.

Changed in version 3.4: Values can range from 256MB to 10TB and can be a float. In addition, the default value has also changed.

Starting in 3.4, the WiredTiger internal cache, by default, will use the larger of either:

  • 50% of RAM minus 1 GB, or
  • 256 MB.

 

这样显然很不合理,对于大部分的个人开发,内存是宝贵的。所以,我们需要配置为MB。

配置项参考此处配置:WiredTiger cache size is only configurable in whole gigabytes.

下面是修改后的配置:/etc/mongod.conf

?

1

2

3

4

5

6

7

8

9

10

11

12

# Where and how to store data.

storage:

  dbPath: /var/lib/mongo

  #dbPath: /mongodata

  journal:

    enabled: true

#  engine:

  mmapv1:

    smallFiles: true

  wiredTiger:

    engineConfig:

      configString : cache_size=512M

其实重点就是下面一项,配置之后,重启mongodb生效:

?

1

2

3

wiredTiger:

    engineConfig:

      configString : cache_size=512M

原创文章,转载请注明: 转载自勤奋的小青蛙
本文链接地址: mongodb 3.2配置内存缓存大小为MB/MongoDB 3.x内存限制配置

文章的脚注信息由WordPress的wp-posturl插件自动生成


 

|2|left

本文转载自:http://www.jyguagua.com/?p=3248

共有 人打赏支持
Airship
粉丝 41
博文 943
码字总数 19883
作品 0
南京
高级程序员
私信 提问
MongoDB与内存

但凡初次接触MongoDB的人,无不惊讶于它对内存的贪得无厌,至于个中缘由,我先讲讲Linux是如何管理内存的,再说说MongoDB是如何使用内存的,答案自然就清楚了。 据说带着问题学习更有效,那就...

Sephiroth
2012/03/14
14.2K
10
Zabbix监控mongodb配置

本文主要介绍zabbix监控mongodb的配置。 zabbix监控mongodb需要自定义脚本去监控,脚本可以传入多个参数。 原理:通过mongodb客户端连接命令,过滤出db.serverStatus()输出的信息。 一、创建...

hnr1017
2018/07/03
0
0
爬虫数据库MongoDB的介绍

MongoDB (名称来自「humongous (巨大无比的)」), 是一个可扩展的高性能,开源,模式自由,面向文档的NoSQL,基于 分布式 文件存储,由 C++ 语言编写,设计之初旨在为 WEB 应用提供可扩展的高...

张元江_erel
2018/11/17
0
0
mongoDB cluster insert slow

1、路由端(cnsz082164:24810),拖看到最近30天的操作,插入量在逐渐上升。 2、主要操作集中在如下表中,从数据分布上看2个分片时均衡的, db.salesmsgmissionmessagerecord.stats() { 3、检...

jan1990
2018/10/30
0
0
mongodb系列~配置文件的优化与处理

mongodb系列~配置文件的优化与处理 一 简介:讲讲如何优化mongo配置文件 二 常规参数 port= //端口 fork=true//守护进程方式启动mongo logpath=shard.log //mongo日志存放路径 journal= tru...

linjin200
01/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

第二个JAVA应用

第二个JAVA应用 方法一:配置文件: # cd /usr/local/tomcat/conf/# vim server.xml</Host> <Host name="www.wangzb.cc" appBase="/data/wwwroot/www.wangzb.cc" //引用所......

wzb88
15分钟前
0
0
2019年阿里Java面试必问:JVM与性能优化+Redis+设计模式+分布式

前言 一年之计在于春 金三银四已经要到来,2019的新的开始,作为一个开发人员,你是否面上了自己理想的公司,薪资达到心中理想的高度? 面试:如果不准备充分的面试,完全是浪费时间,更是对...

火力全開
24分钟前
0
0
详解:Redis主从技术的应用

Redis复制 在生产环境中,Redis通过持久化功能(RDB和AOF技术)保证了即使在服务器重启的情况下也不会损失(或少量损失)数据。但是由于数据是存储在一台服务器上的,如果这台服务器出现硬盘...

问题终结者
28分钟前
0
0
RocketMQ高性能之底层存储设计

说在前面 RocketMQ在底层存储上借鉴了Kafka,但是也有它独到的设计,本文主要关注深刻影响着RocketMQ性能的底层文件存储结构,中间会穿插一点点Kafka的东西以作为对比。 例子 Commit Log,一...

薛定谔的旺
40分钟前
4
0
实战:基于Spring Boot快速开发RESTful风格API接口

写在前面的话 这篇文章计划是在过年期间完成的,示例代码都写好了,结果亲戚来我家做客,文章没来得及写。已经很久没有更新文章了,小伙伴们,有没有想我啊。言归正传,下面开始,今天的话题...

JAVA_冯文议
48分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部