有个项目用到了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附近

终于不必再担心服务器内存不够了,可以安稳的睡个好觉了。

Windows下使用WSRM限制MongoDB内存的更多相关文章

  1. WINDOWS下好用的MongoDB 3.0以上客户端工具: NoSql Manager

      WINDOWS下好用的MongoDB 3.0以上客户端工具: NoSql Manager https://www.mongodbmanager.com/download  

  2. windows下安装和配置mongoDB

    上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...

  3. Windows下安装并启动mongodb

    一.Windows下mongodb的安装 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https ...

  4. windows下使用ofstream默认输出内存数据到文件中时,会自动将0A换成0A0D

    0A即\n,而0D是\r,windows下换行是\n\r,因此会自动转换. 但是,这样会带来很大的问题,导致由内存写入文件中的数据和内存中不一样,还不知道是什么原因造成的. 特别是将从网络接收来的pn ...

  5. Windows下图文详解Mongodb安装及配置

    这两天接触了MongoDB数据库,发现和mysql数据库还是有很大差别的,同时使用前的配置看起来有些繁杂,踩过不少坑,其实只要一步一步搞清了,并不难. 接下来,我就整理下整个安装及配置过程. 安装的M ...

  6. Windows下安装和使用MongoDB

    支持平台:从2.2版本开始,MongoDB不再支持Windows XP.要使用新版本的MongoDB,请用更新版本的Windows系统. 重要:如果你正在使用Windows Server 2008 R ...

  7. Windows下Python连接数据库(mysql, mongodb)

    一 实验平台 1 os: win7 64位旗舰版sp1 2 python: 2.7.10 x64 二 连接数据库 1 连接 mysql数据库 (1)下载mysql(5.6.25-winx64) 建议下 ...

  8. c++ windows下读取大文件(内存映射)

    关于内存映射的基本知识以及一些函数的原型说明,参考博客:http://blog.csdn.net/wcyoot/article/details/7363393 下面是我对于读取一个104M文件大小,使 ...

  9. Windows 下安装和配置 MongoDB(二)

    因为电脑重新安装了系统,所以要重新安装开发环境,按照之前写过的一篇博客介绍的步骤进行安装,发现报了一些错误,下面是遇到的问题和解决方法: 首先下载安装就不多说了,下载地址:https://www.mo ...

随机推荐

  1. Find All Duplicates in an Array

    Given an array of integers, 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and others ...

  2. Outlook~设置

    outlook2013 中帐户设置无法直接更改邮件投递位置到本地的.pst文件,“更改文件夹”选项已经删除. Exchange 传递到 Outlook 数据文件 (.pst) 升级到 Outlook ...

  3. C Primer Plus_第10章_数组和指针_编程练习

    1. /*rain.c 针对若干年的降水量数据,计算年降水总量.年降水平均量,以及月降水平均量*/ #include <stdio.h> #define MONTHS 12 #define ...

  4. sqlserver 行列转换

    http://www.cnblogs.com/zhangzt/archive/2010/07/29/1787825.html PIVOT用于将列值旋转为列名(即行转列),在SQL Server 200 ...

  5. 分布式追踪系统dapper

    http://www.cnblogs.com/LBSer/p/3390852.html 最近单位需要做自己的分布式监控系统,因此看了一些资料,其中就有google的分布式追踪系统dapper的论文:h ...

  6. Jquery ajax 学习笔记

    本人的js & jq 一直是菜鸟级别,最近不忙就看了看ajax方面的知识,文中部分内容参考自这里&这里 之前一直用js写ajax现在基于jq实现方便多了~ $.get & $. ...

  7. 基于Proteus仿真的Arduino学习(1)——Arduino Uno最小系统及LED的简单使用

    一.前言:  A.Arduino简介 Arduino是由一个欧洲开发团队于2005年冬季开发.其成员包括Massimo Banzi.David Cuartielles.Tom Igoe.Gianluc ...

  8. 【Oracle】oracle取最大值和最小值的几个方法汇总

    (1)oracle使用keep分析函数取最值记录 -- 取工资sal最大的雇员姓名及其工资,以及工资sal最少的雇员姓名及其工资 select deptno, empno, ename, sal, m ...

  9. 【原】iOS学习之Socket

    Socket在百度百科的定义 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 相关的描述 Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进 ...

  10. Eclipse,到了说再见的时候了——Android Studio最全解析

    转自:http://blog.jobbole.com/77635/ 去年的Google大会上,Google带给我们一个小玩具——Android Studio,说它是玩具,是因为它确实比较菜,界面过时, ...