Solusi 1:
Tidak, algoritmenya tidak sesederhana itu. Anda dapat menemukan informasi selengkapnya di:
http://linux-mm.org/OOM_Killer
Jika Anda ingin melacak penggunaan memori, sebaiknya jalankan perintah seperti:
ps -e -o pid,user,cpu,size,rss,cmd --sort -size,-rss | head
Ini akan memberi Anda daftar proses yang menggunakan memori paling banyak (dan mungkin menyebabkan situasi OOM). Hapus | head
jika Anda lebih memilih untuk memeriksa semua proses.
Jika Anda meletakkan ini di cron Anda, ulangi setiap 5 menit dan simpan ke file. Simpan setidaknya beberapa hari, sehingga Anda dapat memeriksa apa yang terjadi nanti.
Untuk layanan kritis seperti ssh, saya sarankan menggunakan monit untuk memulai ulang secara otomatis dalam situasi seperti itu. Mungkin menyelamatkan dari kehilangan akses ke mesin jika Anda tidak memiliki konsol jarak jauh.
Semoga berhasil,
João Miguel Neves
Solusi 2:
Saya mengalami kesulitan dengan itu baru-baru ini, karena proses yang dilakukan oom-killer belum tentu salah. Saat mencoba mendiagnosisnya, saya mempelajari tentang salah satu alat favorit saya, di atas.
Utilitas ini seperti atasan steroid. Selama interval waktu yang telah ditentukan sebelumnya, ini memprofilkan informasi sistem. Anda kemudian dapat memutarnya kembali untuk melihat apa yang terjadi. Ini menyoroti proses yang 80%+ berwarna biru dan 90%+ berwarna merah. Tampilan yang paling berguna adalah tabel penggunaan memori tentang berapa banyak memori yang dialokasikan pada periode waktu terakhir. Itu yang paling membantu saya.
Alat yang luar biasa -- tidak bisa mengatakan cukup tentang itu.
di atas monitor kinerja