Ubuntu 上 MongoDB 内存配置技巧
一 核心原则与内存构成
二 关键配置步骤
sudo nano /etc/mongod.conf。storage:
wiredTiger:
engineConfig:
cacheSizeGB: 4
net:
maxIncomingConnections: 2000
sudo systemctl restart mongodmongo --eval "db.adminCommand({getParameter: 1, wiredTigerEngineConfigCacheSizeGB: 1})"db.adminCommand({getParameter: 1, wiredTigerEngineConfigCacheSizeGB: 1})storage.mmapv1.smallFiles: true 等参数降低内存与文件预分配压力,但整体内存控制仍以 WiredTiger 为主。三 场景化建议
cacheSizeGB 设为配额的约 50%–60%;必要时下调 maxIncomingConnections,避免连接风暴导致内存与 CPU 压力飙升。net.maxIncomingConnections 设置合理上限,通常不建议超过业务峰值太多。四 监控与排障要点
mongostat、mongotop 观察吞吐、锁、页错误与耗时,定位内存与 IO 瓶颈;必要时结合慢查询分析优化执行计划与索引。五 系统层面的配合
mongod,但需接受可能的性能下降;重要业务优先保证充足内存与及时扩容。dbPath 所在磁盘保留一定余量,避免磁盘写满导致异常。