Pernahkah website Anda tiba-tiba down? Salah satu penyebabnya bisa jadi karena kehabisan memori! Di dunia Linux, ada “algojo” khusus yang bertugas mengatasi hal ini, yaitu OOM Killer (singkatan dari Out of Memory Killer).
OOM Killer: Pahlawan Memori
OOM Killer pada dasarnya adalah program internal Linux yang bertugas menjaga agar memori (RAM) tidak habis terpakai. Ia terus memantau penggunaan memori oleh berbagai program yang berjalan (proses).
Kenapa Memori Bisa Terlalu Penuh?
Sistem operasi Linux sebenarnya “dermawan” dalam mengalokasikan memori. Ketika sebuah program meminta jatah memori, Linux biasanya memberikan lebih dari yang sebenarnya dibutuhkan. Ini dilakukan dengan asumsi program tersebut mungkin membutuhkan lebih banyak memori di masa depan.
Namun, kebaikan ini bisa menjadi boomerang. Jika terlalu banyak program berjalan dan semuanya “rakus” memori, lama-lama memori bisa benar-benar habis. Di sinilah OOM Killer turun tangan.
Memilih Korban: Siapa yang Dimatikan?
Ketika memori menipis, OOM Killer tidak asal pilih program untuk dihentikan. Ia menggunakan pendekatan yang logis:
- Memori vs Lama Proses Berjalan: OOM Killer lebih memilih “mengorbankan” program yang menggunakan banyak memori tapi belum berjalan lama. Program yang sudah lama berjalan biasanya lebih penting dan stabil.
- Memeriksa “Kesempatan Kedua”: Sebelum memutuskan mematikan program, OOM Killer akan memeriksa beberapa hal:
- Apakah ada cukup ruang swap (semacam memori cadangan di hardisk)?
- Apakah sudah lebih dari 5 detik sejak kejadian kehabisan memori terakhir?
- Apakah dalam 5 detik terakhir belum terjadi 10 kali kehabisan memori?
Jika salah satu kondisi di atas terpenuhi, maka dianggap belum terjadi krisis memori dan OOM Killer tidak perlu bertindak.
Detektif OOM Killer: Mencari Jejak “Pembunuhan”
Jika website Anda down dan curiga karena kehabisan memori, Anda bisa mencari jejak “pembunuhan” program oleh OOM Killer. Caranya:
- Buka terminal dan jalankan perintah:
cat /var/log/messages | grep "Killed"
- Perhatikan outputnya. Jika ada pesan seperti:
Mar 02 14:04:48 host kernel: Out of Memory: Killed process 2574 (mysqld).
Ini menandakan proses MySQL (dengan ID 2574) dihentikan paksa oleh OOM Killer karena kehabisan memori. Akibatnya, layanan MySQL terhenti dan website Anda down.
Mencegah Lebih Baik daripada Mengobati
Solusi terbaik untuk menghindari masalah kehabisan memori adalah menambah kapasitas RAM server Anda. Hindari “menipu” sistem dengan mengalokasikan lebih banyak memori dibanding yang sebenarnya tersedia.
Jangan Panik! Kami Siap Membantu
Jika Anda mengalami masalah dengan OOM Killer, jangan khawatir! Kami menawarkan paket VPS NVMe dengan kapasitas memori yang memadai. Tim ahli kami juga siap membantu Anda mengoptimalkan penggunaan memori di server Anda. Hubungi kami 24/7 untuk bantuan lebih lanjut.