Saya memiliki sesuatu yang bernilai sekitar 200 GB yang disimpan dalam cluster mongo. Memori fisik pada salah satu instance yang menjalankan mongo adalah 8GB. Tidak ada konsekuensi lain yang dijalankan pada instance ini. Sejauh yang saya mengerti berdasarkan dokumen Mongo (seperti ini: http://www.mongodb.org/display/DOCS/Checking+Server+Memory+Usage ) ini berarti bahwa proses mongod harus menggunakan sekitar 100% dari memori fisik yang tersedia. Tetapi jika Anda melihat output berikut dari top
perintah, Anda akan melihat bahwa instance mongod hanya menggunakan 2GB memori penduduk dan ada 2GB memori fisik gratis yang tersedia yang tidak digunakan sama sekali.
Dapatkah seseorang menjelaskan perilaku ini kepada saya? Mengapa ada 2GB memori bebas?
top
keluaran:
top - 23:19:43 up 89 days, 20:05, 2 users, load average: 0.41, 0.55, 0.59
Tasks: 101 total, 1 running, 100 sleeping, 0 stopped, 0 zombie
Cpu(s): 2.0%us, 1.3%sy, 0.0%ni, 93.9%id, 2.6%wa, 0.0%hi, 0.1%si, 0.0%st
Mem: 8163664k total, 6131764k used, 2031900k free, 54976k buffers
Swap: 16771848k total, 10604k used, 16761244k free, 5367700k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1401 mongodb 20 0 174g 2.0g 1.9g S 23 26.2 18070:55 mongod
...
Sistem Informasi:
$ uname -a
Linux aluminum 2.6.32-31-server #61-Ubuntu SMP Fri Apr 8 19:44:42 UTC 2011 x86_64 GNU/Linux
Catatan:
- Ada contoh lain di kluster ini di mana mongod berperilaku seperti yang saya harapkan dan menggunakan semua memori yang tersedia.
- Melihat mongostat sepertinya secara konsisten mengalami beberapa kesalahan halaman, jadi jumlah memori yang digunakan harus bertambah:
- (Saya mengajukan pertanyaan yang sama pada grup google mongodb-user tetapi tidak mendapat tanggapan.)
uname
tetapi saya belum lsb-release
menginstal.
lsb-release -a
danuname -a
tolong)