Lewati ke konten

Berapa Banyak RAM yang Dibutuhkan Server Minecraft?

Perkirakan kebutuhan RAM untuk server Minecraft berbasis Java, Paper, dan yang menggunakan mod.

Anda menjalankan server untuk teman-teman di PC dengan RAM 8 GB. Menulis -Xmx8G pada file startup memang mudah: RAM 8 GB, biarkan Java juga memakai 8 GB. Lalu Anda teringat Windows, browser, dan client Minecraft jika Anda bermain di PC yang sama. Bahkan sebelum ada yang login, sistem kehabisan ruang untuk membagi memori. Masalahnya terkadang bukan pada server, melainkan pada satu baris tersebut.

Perhatikan hasil "Java heap yang disarankan" dan "Total RAM yang dibutuhkan" pada kalkulator secara terpisah. Yang pertama Anda gunakan untuk -Xmx. Yang kedua memberi tahu berapa banyak RAM yang harus ada di PC atau server yang Anda sewa. Tanpa memisahkan keduanya, saya tidak akan memberikan jawaban "8 GB sudah cukup". Jumlah pemain saja tidak bisa menopang jawaban tersebut.

Sepuluh pemain tidak selalu berarti beban yang sama

Berkumpul di spawn vs. menyebar di peta

Tuliskan orang-orang yang akan masuk ke game secara bersamaan, bukan jumlah akun yang terdaftar. Saat 10 orang membangun base di sekitar spawn, mereka melihat ke chunk yang sama. Begitu mereka melesat ke segala arah dengan Elytra, situasinya berubah. Server di satu sisi memuat area baru, dan di sisi lain men-generate medan yang belum pernah dilihat siapa pun. Beban RAM yang ditinggalkan 10 orang di awal malam tidak sama dengan 10 orang di akhir malam.

Saat menghitung, saya melihat bagaimana kelompok tersebut bermain. Jika semua orang berkumpul di area bersama, pilihan "Sebagian besar di area yang sama" sudah tepat. Jika semua orang menyebar ke base masing-masing di dunia survival, pilihan "Di area berbeda / tidak tahu" lebih mendekati. Jika eksplorasi juga intens, tandai opsi tersebut secara terpisah. Kalkulator menambahkan 25 persen ke beban chunk. Menaikkan jumlah pemain menjadi dua puluh hanya agar terkesan berhati-hati justru menyembunyikan dari mana asal perbedaan tersebut.

Periksa juga jarak pandang (view distance) dan jarak simulasi (simulation distance) dari file server.properties. Jarak pandang adalah area yang Anda kirimkan ke pemain. Sedangkan jarak simulasi adalah lingkungan tempat mob dan peristiwa game berjalan. Saat formulir pertama kali dibuka, nilainya tertulis 8 dan 6 chunk. Dalam perhitungan versi modern, jarak yang lebih besar di antara keduanya menjadi penentu. Ketika jarak pandang 8 dan Anda menaikkan jarak simulasi dari 6 ke 7, hasil RAM bisa tetap sama. Hal yang sama tidak berlaku untuk beban tick. Pada profil "1.17 dan sebelumnya", alat ini tidak memperhitungkan jarak simulasi.

Jangan hanya melihat jumlah plugin

Untuk Paper, Purpur, dan Spigot, Anda memasukkan jumlah plugin beserta beban rata-ratanya. Pada Fabric, Forge, dan NeoForge, jumlah mod mulai berperan. Pada Vanilla, kalkulator tidak menggunakan satu pun dari input ini. Jangan mengira opsi "ringan / sedang / berat" sebagai konsumsi RAM terukur dari tiap-tiap plugin. 10 plugin perizinan kecil tidak bisa disamakan dengan plugin yang me-render peta di latar belakang.

Saat memasang modpack, saya biasanya mencari rekomendasi heap yang diberikan paket tersebut untuk server terlebih dahulu. Jika menemukannya, masukkan ke bagian "Gunakan rekomendasi RAM modpack". Alat ini tidak akan turun di bawah angka tersebut. Jangan masukkan rekomendasi untuk client ke sini. Kita sedang membicarakan dua proses game yang berbeda. Jika Anda tidak bisa memperkirakan beban paket tersebut, lihat hasil "sedang" dan "berat" secara berdampingan. Selisih di antara keduanya jauh lebih berguna untuk menilai apakah paket hosting yang lebih besar diperlukan daripada sekadar melihat jumlah mod.

Angka mana yang harus dimasukkan ke mana di kalkulator?

Jika Anda menyiapkan server baru, pilih opsi "Hitung kebutuhan RAM"; jika ingin menguji PC yang ada, pilih "Periksa komputer saya". Perhitungan server untuk kedua opsi ini sama. Hal yang paling mudah terlewat di sini adalah nilai awal formulir: Paper dan 10 plugin sudah terisi secara default. Jika setup Anda tidak memiliki plugin sama sekali, ubah angka 10 menjadi 0. Kemudian masukkan versi, jarak pandang, dan jika perlu jarak simulasi seperti pada server Anda sendiri. Jika Anda berencana membangun farm padat, sistem redstone, web map, atau world tambahan, buka pengaturan lanjutan. Jika tidak, jangan mencentang kotak hanya karena opsi tersebut ada.

Margin keamanan default saat pertama kali dibuka adalah 25 persen. Di pengaturan lanjutan, Anda dapat mengubahnya antara 10 hingga 100 persen. Begitu pengaturan tersebut ditutup, beban tambahan akan dikeluarkan dari perhitungan dan margin akan dikembalikan ke 25 persen. Jika dalam satu pengujian Anda melihat 6 GiB dan di pengujian lain 9 GiB, periksa terlebih dahulu opsi (toggle) mana saja yang aktif. Tuliskan juga input yang Anda gunakan di samping hasil kalkulasi. Dengan begitu, Anda tidak perlu mengulang dari awal saat mencari tahu penyebab perbedaannya.

8 GB kira-kira setara dengan 7,45 GiB. Jika penawaran hosting mencantumkan GB, masukkan GB ke formulir. Jika virtual machine atau container hanya dapat menggunakan sebagian dari RAM fisik, tuliskan bagian tersebut sebagai batasnya. Sangat mudah merasa lega dengan berpikir "saya tulis 8, hasilnya keluar 8". Namun jika Anda memilih satuan yang berbeda di kedua sisi, perbandingannya sudah melenceng sejak awal—terlebih jika hasilnya berada di ambang setengah GiB.

Dua hasil RAM di layar

Jangan mengira angka heap sebagai kapasitas mesin

Java heap adalah batas atas memori yang dapat digunakan server untuk objek-objek Java. Sementara itu, total RAM menyediakan ruang untuk sistem operasi dan memori yang digunakan Java di luar heap. Kalkulator menyisihkan setidaknya 1 GiB untuk penggunaan Java tambahan ini. Jika 15 persen dari heap lebih besar, nilai itulah yang diambil, lalu hasilnya dibulatkan ke atas ke kelipatan setengah GiB terdekat. Jika di layar tertera heap 3,5 GiB, flag -Xmx3584M yang dihasilkan pun sebesar itu. Saat memilih paket hosting, jangan mengira angka -Xmx sebagai RAM paket.

Coba dengan setup berikut: Paper dengan 10 pemain, versi modern, jarak pandang 8 chunk, jarak simulasi 6 chunk, 10 plugin beban sedang. Saat pengaturan lanjutan dan Chunky dinonaktifkan, alat ini menghasilkan heap 3,5 GiB dan total RAM 6,5 GiB. Pada mesin 8 GiB yang menjalankan Linux headless (tanpa desktop), alokasi memori ini pas jika Anda tidak menyisihkan ruang untuk aplikasi lain. Sekarang bayangkan Windows dan client Minecraft di PC yang sama. Begitu Anda memasukkan 1 GiB untuk aplikasi lain dan 4 GiB untuk client, kebutuhan total melonjak ke 13,5 GiB. Mesin 8 GiB tidak lagi cukup di sini. Padahal kita bahkan belum menambahkan satu plugin pun ke Paper. Yang menguras RAM adalah proses-proses lainnya.

Fitur pemeriksaan komputer menetapkan alokasi sistem sebesar 2 GiB untuk Linux headless, 3 GiB untuk Linux dengan desktop, serta 4 GiB untuk Windows dan macOS. Pada container, overhead OS mesin host tidak ditambahkan. Jika ada layanan lain yang berjalan di dalamnya, Anda perlu memasukkan RAM layanan tersebut ke bagian "Aplikasi lain". Ketika kapasitas mesin tidak mencukupi, kalkulator tidak akan mengecilkan heap secara otomatis, melainkan menunjukkan kekurangannya secara jelas.

Beralih dari Vanilla ke modpack

Gunakan kembali konfigurasi 10 pemain dan pengaturan 8/6 chunk. Pada Vanilla, hasilnya adalah heap 3 GiB dan total RAM 6 GiB. Saat Anda menambahkan 10 plugin beban sedang ke Paper, hasilnya menjadi 3,5 dan 6,5 GiB. Contoh Fabric dengan 50 mod beban sedang menunjukkan 5 dan 8 GiB, sedangkan contoh Forge menunjukkan 6 dan 9 GiB. Saya tidak akan menafsirkan hasil ini dengan anggapan "Fabric selalu lebih ringan daripada Forge dalam segala kondisi". Saat mod di dalam paket berubah, perbandingannya juga ikut berubah. Angka-angka ini hanya menunjukkan bagaimana kalkulator berperilaku dengan input yang sama.

Pada contoh Paper, jika pemain tetap berada di area yang sama, Anda akan melihat heap 3 GiB dan total RAM 6 GiB. Jika mereka menyebar dan menjelajahi wilayah baru, hasilnya menjadi 4 dan 7 GiB. Di kedua skenario tersebut, jumlah pemain tetap 10. Oleh karena itu, saya tidak mengandalkan saran "sekian RAM per pemain" begitu saja. Ketika Anda menambahkan farm padat, web map, custom world generation, dan dua active world tambahan, perhitungan yang sama mencapai heap 6 GiB dan total RAM 9 GiB. Daripada menyalakan keempat toggle sekaligus dan mengamati hasilnya, cobalah satu per satu. Dengan begitu, Anda akan melihat beban mana yang membuat angka perhitungan melonjak.

Kalkulasi Chunky dan pengukuran server yang sedang berjalan

Di Chunky, pertama-tama Anda memilih nama world, titik pusat, bentuk, dan radius. Luas area pada persegi adalah 4 × radius², sedangkan pada lingkaran adalah π × radius². Karena satu chunk berukuran 16 × 16 blok, kalkulator membagi luas area dengan 256. Jika pusatnya 0, 0 dan radius persegi 3000 blok, hasilnya adalah 140.625 chunk. Jika setengahnya sudah ter-generate sebelumnya, tersisa 70.313 chunk. Jika radius dijadikan 6000, hasilnya 562.500 chunk. Menambahkan 3000 blok tidak membuat pekerjaan menjadi dua kali lipat—luas areanya justru bertambah empat kali lipat. Periksa kembali angka di kolom radius.

Saat Chunky diaktifkan, rekomendasi heap pada contoh server Paper naik menjadi 4 GiB dan total RAM menjadi 7 GiB. Anda bisa melakukan uji coba pra-generasi singkat untuk memperkirakan kebutuhan disk dan waktu. Jika Anda memasukkan 10.000 chunk baru, penambahan ukuran folder 256 MiB, dan waktu 300 detik, Anda akan melihat estimasi sekitar 3,52 GiB disk dan 1,17 jam untuk 140.625 chunk yang tersisa. Kecepatan generasi world mungkin tidak selalu konstan di sepanjang proses. Jangan sertakan file backup atau file web map ke dalam pengukuran. Sebelum menjalankan perintah, periksa kembali nama world dan radiusnya. Kelebihan satu angka nol saja akan berdampak nyata pada waktu dan ruang disk.

Server sudah dijalankan, para pemain berpencar, lalu TPS turun. Jangan langsung memperbesar -Xmx. TPS adalah jumlah pembaruan game per detik, sedangkan MSPT adalah berapa milidetik yang dibutuhkan untuk satu pembaruan. Jalankan /spark tps untuk melihat keduanya. Dengan mengambil profil Spark di saat beban puncak, Anda dapat mengetahui apakah waktu terbuang untuk generasi world atau untuk plugin. Baca juga tekanan pembersihan memori (garbage collection) dari data GC secara terpisah. Pada server yang crash akibat galat OOM, batas RAM dan -Xmx memang tempat pertama yang harus diperiksa. Namun jika memori masih kosong sementara TPS turun, saya akan membuka output profiler terlebih dahulu sebelum memikirkan paket RAM baru.

Cara kami mengujinya

Kami memeriksa rumus, konversi satuan, dan skenario pengujian yang telah ditentukan dalam definisi JSON kalkulator. Kami memastikan bahwa konfigurasi Paper bawaan untuk 10 pemain menghasilkan 3,5 GiB memori heap dan 6,5 GiB total RAM, sedangkan area Chunky berbentuk persegi dengan radius 3000 blok menghasilkan 140.625 chunk, sesuai dengan nilai pengujian yang diharapkan. Kami juga memeriksa arti pengaturan berdasarkan dokumentasi pengembang. Pengujian beban pada server sungguhan belum dilakukan.

Pertanyaan Umum

Berapa GB RAM yang dibutuhkan untuk server Minecraft 10 pemain?
Pada contoh Paper yang digunakan dalam artikel, dibutuhkan Java heap 3,5 GiB dan total RAM mesin 6,5 GiB. Pemain yang menyebar, menjelajahi area baru, dan beban tambahan dapat meningkatkan kebutuhan ini.
Apakah server Minecraft bisa dijalankan dengan RAM 8 GB?
Dalam konfigurasi contoh, mesin Linux tanpa antarmuka desktop dengan 8 GiB memenuhi kebutuhan memori. Jika Windows, aplikasi lain, dan client Minecraft berjalan di komputer yang sama, kebutuhan pada contoh meningkat menjadi 13,5 GiB. Selain itu, 8 GB kira-kira setara dengan 7,45 GiB.
Berapa GB RAM yang dibutuhkan untuk server Minecraft modded?
Untuk 10 pemain dan 50 mod dengan beban sedang, kalkulator memberikan 5 GiB heap / 8 GiB total RAM untuk Fabric dan 6 GiB heap / 9 GiB total RAM untuk Forge. Jika modpack memiliki rekomendasi heap khusus untuk server, masukkan juga nilai tersebut.

Referensi dan Sumber

Perhitungan di halaman ini didasarkan pada sumber standar dan ilmiah berikut.

  1. PaperMC: server.properties

    docs.papermc.io
  2. PaperMC: Aikar’s flags

    docs.papermc.io
  3. Chunky: FAQ

    github.com
  4. Chunky: Commands

    github.com
  5. Spark: TPS and MSPT

    spark.lucko.me
Pembaruan terakhir:
Informasi didasarkan pada nilai referensi standar. Verifikasi disarankan untuk proyek penting.