本人小白,学习mongodb俩月不到,近几日在看“监控MongoDB“的内存使用部分。于是顺带搂几眼Linux管理内存原理,于是我就感觉掉进坑里爬不上来而且越掉越深了......
首先,是这篇几文章:MongoDB内存使用原理、MongoDB源码概述——内存管理和存储引擎 觉得博主思路还挺清楚的,只是我觉得我对虚拟内存、swap的概念好像不那么清晰......
于是,找到了这篇帖子:进程地址空间和虚拟内存 还没看完就彻底晕了=。= 怎么说呢,现在的感觉就是,可以意会虚拟内存、页交换文件的概念和作用,但要我说出来,我说不清楚。
这样吧,先截取几段我认为有道理的回帖,这个问题以后再慢慢想,我需要回到MongoDB......=。=
哪位大神能给比较清楚明了的解释,感激不尽......
再mark几个有关MongoDB内存使用的文章:
还有零散的知识,大概应该放在这篇帖子里:
一个IO请求到达磁盘前,可能经过多层缓存:
①系统级文件缓存;
②存储控制器软件级缓存;
③磁盘设备本身自带的硬件级缓存。
另外,我觉得需要思考一下怎么学习的问题。一个问题牵扯出很多问题,而且无穷尽。怎么找那个平衡点?怎么”差不多停下来“?