top memberi tahu saya:
last pid: 64807; load averages: 0.99, 0.97, 0.92 up 189+04:47:22 09:16:17
45 processes: 1 running, 44 sleeping
CPU: 0.4% user, 0.0% nice, 0.2% system, 6.4% interrupt, 93.0% idle
Mem: 222M Active, 2151M Inact, 2008M Wired, 823M Buf, 3499M Free
Swap: 8192M Total, 8192M Free
Munin menunjukkan ini sedikit lebih jelas:
Seperti yang Anda lihat, server memiliki sekitar 8GB ram. Saya bertanya-tanya apakah saya dapat menjejalkan binatang ini ke server 2GB yang lebih sederhana . Sekarang saya tahu apa artinya aktif dan buffer, saya pikir. Tetapi saya benar-benar khawatir dengan gumpalan memori "berkabel" dan "tidak aktif". Itu tidak memetakan ke proses yang ada sejauh yang saya tahu.
Perhatikan bagaimana garis hijau "aktif" naik pada bulan Desember: saat itulah kami mulai menggunakan daemon BGP pada router ini. Saya tidak benar-benar mengerti apa yang terjadi pada bulan April dan Mei, tetapi saya ingat melakukan upgrade sistem dan beralih ke pkgng sekitar waktu itu.
Inilah router cadangan untuk yang pertama, dengan lebih sedikit ram (4GB):
Tampaknya yang ini hidup dengan sangat baik dengan setengah RAM dan masih menyisakan sekitar 2GB gratis, yang membuat saya percaya saya bisa beralih ke kotak 2GB untuk server ini, menurunkan biaya dan pemeliharaan ...
Ada saran? Apa arti berbagai penghitung memori yang ditunjukkan di atas? Lebih khusus, apa yang dilakukan:
- Aktif
- Non-aktif
- Cache
- Buffer
- Wired
- Gratis
...sangat jahat? Saya telah menemukan beberapa tulisan yang menjelaskan bit-bit dari karya subsistem VM, dan saya ingat memiliki "ah-ah!" saat memahami semua ini sekitar 12 tahun yang lalu, tetapi saya lupa. :) Bahkan buku pegangan FreeBSD yang setia gagal menjawab pertanyaan saya ...
Bisakah saya menurunkan versi ke 2GB?
free
perintah dari procps ): linux - penggunaan memori nyataJawaban:
Active
: Memori saat ini sedang digunakan oleh suatu prosesInactive
: Memori yang telah dibebaskan tetapi masih di-cache karena dapat digunakan lagi. Jika lebih banyakFree
memori diperlukan, memori ini dapat dihapus dan menjadi bebas. Memori ini tidak dihapus sebelum dibutuhkan, karena "memori bebas adalah memori yang terbuang", tidak ada biaya apa pun untuk menyimpan data lama di sekitar jika diperlukan lagi.Wired
: Memori digunakan oleh Kernel. Memori ini tidak dapat ditukarCache
: Memori yang digunakan untuk menyimpan data, dapat segera dibebaskan jika diperlukanBuffers
: Disk cacheFree
: Memori yang sepenuhnya gratis dan siap digunakan.Inactive
,Cache
danBuffers
dapat menjadi gratis jika dibersihkan.Jadi, Anda bisa menambahkan
Inactive
keFree
hitungan Anda dan menganggapnya tidak digunakan.Wired
adalah memori yang digunakan oleh kernel, yang termasuk tumpukan jaringan. menjalankannetstat -m
akan memberi Anda ringkasan penggunaan memori oleh tumpukan jaringan.Berdasarkan grafik Anda, selain lompatan yang menyangkut dalam
wired
memori pada awal Maret, ya, Anda harus dapat menjalankan beban kerja itu pada ram 2GB. Jika Anda melakukannya, pertimbangkan untuk menjalankan i386 daripada amd64, karena setiap alokasi memori akan mengambil lebih sedikit ruang, karena pointer akan menjadi 32bit, bukan 64bit.sumber