Membatasi penggunaan memori pada Linux

Saya agak suka mengelola shared hosting walaupun masih menggunakan VestaCP. Kenapa? Karena kadang saya menemukan kasus – kasus unik dan bahkan serangan malware. Mau belajar setting VPS secara cepat? Sering – seringlah mencari masalah. 😛 Kali ini yang saya alami adalah ada user yang entah menjalankan script PHP apa yang bisa makan memori hingga 500MBan, padahal VPSnya sendiri cuma 1GB. Sadis! 😀

Bisa dikatakan ini menyambung pembahasan soal mengecek batasan user Linux dahulu, bedanya sekarang kita ingin menerapkannya. Jadi kita bisa memanfaatkan perintah ulimit untuk memberi kuota penggunaan memori tapi per proses lho ya bukan per user. Kebetulan ini masih cocok sekali dengan kasusnya karena satu proses PHP-FPM bisa membengkak jadi 0.5GB tadi.

Misalkan saya ingin membatasi agar proses di Linux maksimal menggunakan RAM sebesar 256MB, maka perintahnya:

ulimit -v 256000

Satuannya adalah Kilobytes dan kayanya bukan pas 256MB ya kalau dikonversikan dari KB ke MB. Anggap saja sama deh. 😛

Aturan ini akan diberlakukan untuk pemakaian memori keseluruhan untuk satu proses tapi swap tidak termasuk didalamnya. Setelah anda terapkan hasilnya antara 2:

  • Prosesnya berlangsung lebih lama tapi tidak mengganggu yang lain (sambil berharap semoga tidak menggunakan CPU secara signifikan).
  • Atau muncul error kehabisan memori (Out Of Memory) dan kalau ini perlu disesuaikan lagi batasnya.

*Suatu saat ingin mencoba cPanel+WHMCS sih. 😀 Dan siapa tahu ikut terjun di dunia provider shared hosting. Hehe. 🙂

2 pemikiran pada “Membatasi penggunaan memori pada Linux

  1. 1. Saya sering temukan istilah PHP’s Memory Limit ? apa sama dengan memori pada Linux ?

    2. define('WP_MEMORY_LIMIT', '256M');
    3. define('WP_MAX_MEMORY_LIMIT', ‘384M’);

    Mhon dijelaskan mas. Kalau boleh ada artikel mas Chandra yg bahas istilah masing-masing serta Kapan penggunaan memory tsb. Thnks

    • Lain mas. Kalau PHP Memory Limit itu batasan dari mesin PHPnya bahwa satu script bisa menggunakan maksimal berapa MB.

      Sedangkan kedua kode WordPress diatas, yang pertama itu untuk penggunaan memori WordPress secara keseluruhan, dan yang kedua setahu saya hanya diterapkan pada sisi administrasi (wp-admin). Awalnya saya juga heran kok bisa ada setting limit memori berbeda di WordPress.

      Saya buatkan artikelnya untuk PHP mas: https://servernesia.com/1668/mengatur-besar-memori-php/

Tinggalkan komentar