MongoDBnode 内存上限设置置

([已注销])
([已注销])
([已注销])
第三方登录:Windows下使用WSRM限制MongoDB内存
 有个项目用到了MongoDB,我们是在WINDOWS 2008 64位环境下部署的,为啥不部署到linux下面呢,我们没那么多服务器,只能将就一下了。
  大家都知道Mongodb吃内存太厉害了,如果不重启服务,内存一直蹭蹭地往上涨,定时重启MongoDB服务是能暂时的收回内存,但这也不是长久之计。如果不去限制MongoDB的内存那么系统有多少内存都能被它消耗掉,我们的服务器上还有IIS, SQL SERVER, Redis等其他服务,不能将内存全部分配给Mongodb使用,怎样限制MongoDB的内存呢?
  为了解决这个问题,我发现Windows 2008自带的“Windows 系统资源管理器”很好用,可以完美的解决这个问题。我将配置的方法一步一步的记下来,为了以后查询起来也方便。
1、安装 Windows 系统资源管理器
打开:开始
-- 管理工具
-- 服务器管理器
选择“功能”
-- 添加功能
Windows 系统资管理器
在弹出的窗口点击“添加必须的功能”
稍微等待1分钟左右 Windows 系统资管理器就安装好了
Windows 系统资管理器
选择 管理此计算机
在资源分配策略上右键
-- 新建资源分配策略
随便填写个名字,例如 Mongodb Limit ,然后点击下面那个添加按钮
在常规窗口下拉 进程匹配条件 --
在弹出的窗口中继续点击添加
因为我服务器上的Mongodb注册成了服务,所以在这里选择: 已注册的服务 ,再点击右边的“选择“按钮
在众多服务中找到mongodb服务
一路”确定“
回到资源分配的常规页面,这里我们将CPU限制为40%
切换到”内存“ 页
为了测试,我们将内存限制为1000M
设置好了就可以在这里看到我们的新策略
为了让新策略起效,我们还需要点击几下鼠标,完成最后的操作:
在 资源管理器上点击右键展开菜单,选择”属性“
将日历修改为禁用,然后选择当前资源分配策略为我们新建的 MongodbLimit
确定后发现在MongodbLimit 后面多了个 {管理} 字样,说明我们的设置其效果了。
我们重启mongodb服务,发现最大内存限制在了1000MB附近
终于不必再担心服务器内存不够了,可以安稳的睡个好觉了。
没有更多推荐了,在本章中,我们将了解索引限制及其它组件。
索引额外开销每个索引占用一些空间,并导致每次插入,更新和删除的开销。因此,如果很少使用集合进行读取操作(大部分是插入或更新操作),则建议不要使用索引。
RAM/内存的使用由于索引存储在RAM中,因此应确保索引的总大小不超过RAM限制。 如果总大小超过了系统内存的大小,MongoDB将开始删除一些索引,从而导致性能下降。
查询限制索引不能在使用的查询中使用 -
正则表达式或否定运算符,如$nin,$not等算术运算符,如$mod等$where子句
因此,建议经常检查查询的索引使用情况。
索引键限制
从MongoDB 2.6版本开始,如果现有索引字段的值超过索引键限制,MongoDB将不会创建索引。
插入超过索引键限制的文档如果本文档的索引字段值超过索引键限制,MongoDB将不会将任何文档插入索引集合。 mongorestore和mongoimport工具也是如此。
索引最大范围
集合不能有超过64个索引。索引名称的长度不能超过125个字符。复合索引最多可以编号31个字段。
易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:"教程" 选择相关教程阅读或直接访问:http://m.yiibai.com 。
上一篇:下一篇:
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加3个群。
Java技术群:
(人数:2000,等级:LV5,免费:否)
MySQL/SQL群:
(人数:2000,等级:LV5,免费:否)
大数据开发群:
(人数:2000,等级:LV5,免费:否)
Python技术群:
(人数:2000,等级:LV5,免费:否)
人工智能深度学习:
(人数:2000,等级:LV5,免费:否)
测试工程师(新群):
(人数:1000,等级:LV1,免费:是)
前端技术群(新群):
(人数:1000,等级:LV1,免费:是)
C/C++技术(新群):
(人数:1000,等级:LV1,免费:是)
Node.js技术(新群):
(人数:1000,等级:LV1,免费:是)
PostgreSQL数据库(新群):
(人数:1000,等级:LV1,免费:否)
Linux技术:
(人数:2000,等级:LV5,免费:否)
PHP开发者:
(人数:2000,等级:LV5,免费:是)
Oracle数据库:
(人数:2000,等级:LV5,免费:是)
C#/ASP.Net开发者:
(人数:2000,等级:LV5,免费:是)
数据分析师:
(人数:1000,等级:LV1,免费:是)R语言,Matlab语言等技术mongodbwindows内存限制_中华文本库
mongodb 对内存的严重占用以及解决方法_IT/计算机_专业资料。刚开始使用mongodb...Win7等32位系统无法使用... 8页 免费
360占内存和CPU问题解决... 3页 ...
警告:如果设置为0,SYNCDELAY 不会同步到磁盘的内存映射文件。在生产系统上,不...限制 默认情况下,mongodb中对每个数据库可以使用的集合限定在24000个命名空间.每个...
关于redis、memcache、mongoDB的对比_计算机软件及应用_IT/计算机_专业资料。从...突破物理内存的限制;可以对 key value 设 置过 期时间(类似 memcache) ...
MongoDB 数据库占用内存问题 经过近三个月的尝试前三个方案已失败: 一, 通过系统自带内存管理功能限制 mongo 使用内存大小。结果:无效,经过一段时间 (3 天左右)...
如果是在 window 系统下还需依赖 .NET framwork2.0,64位系统可能无法直接通过安装...MongoDB 目前支持的存储引擎为内存映射引擎。当 MongoDB 启动的时候,会将所有的...posts - 19,&
comments - 0,&
trackbacks - 0
1.创建控制组(确保cgroups binaries被安装)
cgcreate -g memory:MongoLimitGroup
如果报错cgcreate: libcgroup initialization failed: Cgroup is not mounted.
启动cgconfig服务:service cgconfig start2.设置具体可用内存一般b为单位
& /sys/fs/cgroup/memory/MongoLimitGroup/memory.limit_in_bytes
3.使用下面的命令将已经删除的页面保留在缓存中
echo 3 & /proc/sys/vm/drop_caches
4.分配服务到创建的控制组
cgclassify -g memory:MongoLimitGroup mongod_pid
5.检测设置的是否有效果
阅读(...) 评论()

我要回帖

更多关于 ddr4内存超频电压上限 的文章

 

随机推荐