在使用MongoDB的時候遇到了一個內存佔用的問題,爬蟲爬過來的圖片在庫中存的是網絡地址,要寫一個腳本對圖片進行分批下載,所以會對MongoDB頻繁查詢。
發現使用過程中mongod的服務佔用了40.5%的內存
查看相關資料得知3.4版本後,內存默認使用的是(系統內存-1GB)*50%
我通過以下命令啓用MongoDB
/usr/bin/mongod --config /etc/mongod.conf --fork --wiredTigerCacheSizeGB 8
關鍵在於 --wiredTigerCacheSizeGB 8 限制緩存使用內存大小爲8GB,這樣MongoDB使用的內存就是(8GB-1GB)* 50%