不一定。只有少量空闲 RAM 的机器当然也可以运行 MongoDB。

MongoDB 自动将机器上的所有可用内存用作缓存。系统资源监视器显示 MongoDB 使用了大量内存,但其使用是动态的。如果另一个进程突然需要服务器的一半 RAM,MongoDB 会将用作缓存的内存交给该进程使用。

技术上,操作系统的虚拟内存子系统管理 MongoDB 的内存。这意味着 MongoDB 将使用它能够使用的所有可用内存,并根据需要交换到磁盘。提供足够的内存以支持应用程序在 RAM 中的工作数据集,将能实现最佳性能。

 

总结

1.内存足够是尽量使用内存

2.内存有限时。会通过交换部分不活跃的内存到磁盘临时保存。也是小内存查询慢的主要原因。(不停的交换内存页,这时观察磁盘io很高)