关于mongodb占用内存过大的问题

2023-05-16

一、现象

        最近发现自己服务器内存越来越少,查了一下原来是部署的mongodb使用内存在线性增加。不查不知道,一查吓一跳,竟然占用了3G的内存。。

二、分析

     1.内存增加的原因

               mongo为了优化他的读写效率,将内存当做缓存,所以你读写次数越多,缓存就越大。默认值:

               从3.4开始,WiredTiger内部缓存默认使用较大的一个:

  • 50%(RAM - 1 GB),或
  • 256 MB。

               例如,我是8G内存,那么最大缓存0.5*(8-1)=3.5G,看到了么。。。mongo默认3.5G都是他的缓存。

     2.cacheSizeGB的介绍

storage.wiredTiger. engineConfig.cacheSizeGB

wiredtiger将使用所有数据的最大缓存大小,wiredTiger缓存工作集(working set)数据的内存大小,单位:GB,此值决定了wiredTiger与mmapv1的内存模型不同,它可以限制mongod对内存的使用量,而mmapv1则不能(依赖于系统级的mmap)。默认情况下,cacheSizeGB的值为假定当前节点只部署一个mongod实例,在MongoDB 3,默认情况下,wiredtiger缓存,使用1 GB或安装的物理内存的一半,以较大者为准。如果当前节点部署了多个mongod进程,那么需要合理配置此值。如果mongod部署在虚拟容器中(比如,lxc,cgroups,Docker)等,它将不能使用整个系统的物理内存,则需要适当调整此值。默认值为物理内存的一半。

三、解决方案

      修改(增加)cacheSizeGB配置。

      配置如下:

  engine: wiredTiger
#  mmapv1:
  wiredTiger:
    engineConfig:
      cacheSizeGB: 1

参考:MongoDB配置文件选项介绍 – 运维那点事

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于mongodb占用内存过大的问题 的相关文章

随机推荐

  • ARM 安装中文输入法

    TX2 为嵌入式开发板 xff0c 系统架构为ARM xff0c 普通的PC上的Linux系统安装中文输入法的方法不适用 xff0c 所以这里提供ARM上的中文输入法的安装方法 步骤1 xff1a 打开终端 xff0c 输入以下命令 sud
  • cordova 打包步骤

    年底了 xff0c 好多资料都在整理 xff0c 为了避免遗忘 xff0c 也为了利益他人吧 直接上步骤吧 xff1a 增加运行环境的模板 cordova platform add android 编译android的程序 cordova
  • BlueROV-7: Keep Learning Dronekit

    The motors can spin now by using the following program from dronekit import connect VehicleMode import sys import time C
  • BlueROV-8: Functions to Drive the Vehicle

    Some functions like goto function or speed setting function are limited because they are GPS dependent GPS is not availa
  • BlueROV-9: Driving Control

    Home location http python dronekit io guide vehicle state and parameters html The Home location isset when a vehicle fir
  • 人工智能发展简史

    人工智能发展简史 第一章 xff1a 起步期 20世纪50年代及以前1 1 计算机象棋博弈 xff08 Programming a computer for playing chess xff09 1 2 图灵测试 xff08 Turing
  • 对角度滤波时0-360度跳变的解决办法

    对角度滤波的过程中会发现 xff0c 视觉direction方向会发生0 360的数值跳变 xff0c 为了解决这个问题 xff0c 需要将0和360度之间的间断点变成连续可导的函数 xff0c 经过摸索 xff0c 想出一个办法 xff0
  • 电机控制 龙伯格观测器 永磁同步电机无传感器控制 全C代码程序

    电机控制 龙伯格观测器 永磁同步电机无传感器控制 全C代码程序 成熟产品方案 DSP28335 xff08 1 xff09 全C程序完成由电机参数 电流微分方程构建dq轴误差模型 控制参数逻辑变换 低通滤波器转速滤波和转子角度积分等控制环节
  • ROS学习笔记-1: 构建工作空间-创建catkin包-编写发布器与订阅器

    1 ROS文件系统介绍 http wiki ros org cn ROS Tutorials NavigatingTheFilesystem 2 Installing catkin http wiki ros org catkin Inst
  • 信息安全重点知识

    一 信息安全概述 网络空间安全的重要性 xff1a 没有网络安全就没有国家安全信息安全 xff1a 防止数据未授权的访问 xff0c 数据有意和物一的威胁 网络安全是信息安全的子集 信息安全的三要素 xff08 CIA xff09 xff1
  • 海天注塑机KEBA系统数据采集

    本文章只针对海天注塑机的KEBA系统 xff0c 因为其他注塑机厂家也用KEBA系统 xff0c 他们的采集方式可能不太一样 xff0c 所以后续有时间我将写其他文章来解释 xff08 默认你已经向海天采购了OPC组件 xff09 一 采集
  • Axure基础:事件和动态面板

    这一篇文章我们主要是将如何做系统左侧的导航 xff0c 并且告诉大家如何动态的切换各个页面 一 事件 1 事件基础 事件的核心就是什么时候做什么事 其中的什么时候可以是如下 xff1a 能做的事情如下 xff1a 2 远程监控云中的事件 监
  • 设备联网调试三板斧

    在实际的工业互联网项目中 xff0c 设备联网所占的比重越来越大 有的一期项目为了简单快速上线 xff0c 让客户直观体会到工业互联网的效果 xff0c 直接会把设备联网放在一期项目的重点 那么在做此类项目时 xff0c 设备联网调试就显得
  • 光立方完全解析

    转载请注明出处 xff1a http blog csdn net ruoyunliufeng article details 37903899 这个4 4 4的三色光立方是我在初学单片机的时候做的一个小项目 很适合给初学单片机和C语言的同学
  • 远程视频监控之应用篇(mjpg-streamer)

    转载请注明出处 xff1a http blog csdn net ruoyunliufeng article details 38515311 这篇文章将主要结合源码介绍mjpg streamer xff0c 使小伙伴们了解视频监控的实现
  • Matplotlib 入门(三):多图合并

    一 多合一显示 1 subplot方法 xff1a 设置行 列和起始点 plt subplot 2 1 1 分成两行一列 xff0c 起始点为1 2 代码 coding utf 8 34 34 34 Created on Sun Sep 2
  • python毫秒级延时

    一 毫秒延时 近期有一个ms级别延时的需求 xff0c 实际测试了一下 xff0c 环境 xff1a win7 64位 xff0c python2 7 13 结果 xff1a 毫秒级别的延时是能够支持的 xff0c 微妙是不支持的 二 de
  • 数据分析之乳腺癌预测

    零 定义问题 1 1 数据介绍 http archive ics uci edu ml machine learning databases breast cancer wisconsin breast cancer wisconsin n
  • px4通过mavros+wifi+板载计算机连接地面站

    px4通过mavros 43 wifi 43 板载计算机连接地面站 https blog csdn net zouxu634866 article details 106835967
  • 关于mongodb占用内存过大的问题

    一 现象 最近发现自己服务器内存越来越少 xff0c 查了一下原来是部署的mongodb使用内存在线性增加 不查不知道 xff0c 一查吓一跳 xff0c 竟然占用了3G的内存 二 分析 1 内存增加的原因 mongo为了优化他的读写效率