Memori: berapa yang harus dialokasikan dan mengapa tidak semuanya
Cara membaca grafik memori di panel, mengapa memori terpakai bukan berarti kekurangan, dan kapan waktunya naik ke paket lebih tinggi.
Diperbarui 13 Agustus 2026
Grafik memori di panel sering membuat pengguna baru khawatir: angkanya hampir selalu tinggi. Ini perilaku normal Java.
Cara membacanya
Java mengalokasikan memori di muka dan hanya membebaskannya saat garbage collection. Pola gigi gergaji pada grafik — pemakaian naik lalu turun tajam setelah collection — adalah tanda server yang sehat.
Masalah terlihat berbeda: garisnya menempel di batas atas dan tidak turun setelah penurunan. Artinya garbage tidak dibebaskan — entah memori memang terlalu kecil, atau ada kebocoran.
Tanda kekurangan
OutOfMemoryErrordi log — analisis.- Macet selama beberapa detik yang makin sering seiring uptime.
- Server berjalan lancar setelah restart dan memburuk menjelang malam.
Kebocoran
Jika pemakaian naik secara linear dan tidak turun, cari penyebabnya:
spark heapsummary
Biasanya plugin yang menumpuk data, atau mod dengan chunk loader — Spark.
Langkah sementara adalah auto-restart sekali sehari. Solusi permanennya adalah menemukan dan memperbarui penyebabnya.
Jangan alokasikan semuanya
Selain heap, proses juga butuh memori untuk metadata, thread, dan buffer, serta container butuh memori untuk sistem. Panel Millida sudah memperhitungkan hal ini sendiri dengan menetapkan batas heap sesuai paket — Anda tidak perlu mengubahnya secara manual.
Kapan harus ganti paket
Saat pemakaian puncak terus-menerus menyentuh batas selama operasi normal dan profil tidak menunjukkan kebocoran — Mengganti paket.
