/
mc-node.net →
Minecraft

Ile RAM-u potrzebuje Twój serwer Minecraft?

Zaktualizowano 31/08/20264 min czytania
W tym artykule
  1. Wytyczne według typu serwera i liczby graczy
  2. Ustal swoje zapotrzebowanie na RAM w czterech krokach
  3. Dlaczego nigdy nie oddajesz 100% heapowi Javy
  4. Jak rozpoznać za mało — albo za dużo — RAM-u
  5. Częste problemy i komunikaty błędów
  6. Jaki pakiet wybrać?

Za mało RAM-u to crashe i przycięcia, a za dużo — comiesięczne płacenie za pamięć, której serwer nigdy nie wykorzysta. W tym artykule znajdziesz konkretne wytyczne dla każdego typu serwera i liczby graczy, dowiesz się, dlaczego heap Javy zawsze musi być mniejszy niż Twój pakiet, i poznasz sygnały, po których rozpoznasz, że czas na upgrade — albo że możesz przejść na mniejszy pakiet.

Wytyczne według typu serwera i liczby graczy

Poniższe liczby to całkowity rozmiar pakietu (a nie heap Javy — o tym niżej). Kieruj się szczytową liczbą graczy, nie średnią.

Typ serwera1–5 graczy5–15 graczy15–30 graczy
Vanilla2–4 GB4–6 GB6–8 GB
Paper z pluginami4 GB6–8 GB8–12 GB
Fabric/Forge/NeoForge, lekki modpack4–6 GB6–8 GB8–12 GB
Ciężki modpack (np. All the Mods 10)10–12 GB12–16 GB16 GB lub więcej

Pułapka: zalecana ilość RAM-u na stronie modpacka to niemal zawsze wartość dla klienta. Serwer musi jednocześnie obsługiwać chunki, encje i maszyny wszystkich graczy, więc zwykle potrzebuje 2–4 GB więcej. All the Mods 10 (NeoForge, 1.21.1) na kliencie działa świetnie z 8 GB, ale jako serwer potrzebuje 10–12 GB — zwłaszcza podczas generowania świata.

Ustal swoje zapotrzebowanie na RAM w czterech krokach

  1. Wybierz w tabeli wiersz pasujący do Twojego oprogramowania serwera oraz kolumnę odpowiadającą oczekiwanej szczytowej liczbie graczy.
  2. Dolicz 1–2 GB, jeśli używasz wielu pluginów (50+), ustawiasz wysoki view distance, ładujesz kilka światów lub korzystasz z niestandardowego generatora świata.
  3. Wybierz pakiet równy temu wynikowi lub większy; zawsze zaokrąglaj w górę.
  4. Po tygodniu realnego użytkowania sprawdź zakładkę Console w panelu: znajdziesz tam wykresy zużycia pamięci i CPU na żywo. Jeśli w godzinach szczytu stale przekraczasz 90%, zwiększ pakiet; jeśli utrzymujesz się poniżej 60%, może wystarczyć mniejszy.

Dlaczego nigdy nie oddajesz 100% heapowi Javy

Proces Javy to nie tylko heap, który ustawiasz przez -Xmx. Dochodzi do tego pamięć off-heap: metaspace dla załadowanych klas, kompilator JIT, stosy wątków oraz direct memory, z której Netty korzysta przy ruchu sieciowym i operacjach I/O na chunkach. Przy modpacku z setkami modów ten narzut może z łatwością sięgnąć 1–2 GB. Jeśli ustawisz -Xmx na pełny rozmiar pakietu, cały proces przekroczy limit kontenera i serwer zostanie twardo wyłączony — mimo że sama Java myślała, że ma jeszcze zapas.

  1. Trzymaj się zasady: heap = rozmiar pakietu minus 1–2 GB (przy pakiecie 4 GB będzie to -Xmx3G, przy 12 GB około -Xmx10G).
  2. W panelu MC-Node komenda startowa automatycznie dopasowuje heap do pakietu. Aby to sprawdzić lub zmienić, otwórz zakładkę Startup i przejrzyj tam komendę startową oraz jej zmienne.
  3. Po każdej zmianie zrestartuj serwer przez zakładkę Console; ustawienia heapu są wczytywane tylko przy starcie.

Jak rozpoznać za mało — albo za dużo — RAM-u

Za mało RAM-u: w konsoli lub crash logach widzisz java.lang.OutOfMemoryError: Java heap space, serwer nagle pada bez wyraźnego komunikatu błędu (out-of-memory kill kontenera) albo gracze doświadczają coraz dłuższych zawieszeń, bo garbage collector potrzebuje sekund na zwolnienie pamięci.

Za dużo RAM-u: wykres pamięci nawet w godzinach szczytu nigdy nie przekracza 60%. To nie jest problem z wydajnością, ale zmarnowany budżet — a ekstremalnie duży heap może wręcz wydłużyć pauzy garbage collectora zamiast je skrócić.

Ważne: więcej RAM-u nie naprawi lagów CPU. Przycięcia spowodowane dużą liczbą encji, zegarami z redstone'u czy generowaniem świata to problemy z tickami, nie z pamięcią. Zanim zwiększysz pakiet, wykonaj najpierw profil Sparkiem według naszego poradnika o timings i Sparku.

Częste problemy i komunikaty błędów

  • OutOfMemoryError: Java heap space — Heap jest stale zapełniony. Zwiększ pakiet albo najpierw obniż view distance w server.properties i ogranicz liczbę załadowanych światów.
  • Serwer wyłącza się bez komunikatu błędu — Cały proces (heap plus off-heap) przekroczył limit pakietu. Obniż -Xmx, aby zostało 1–2 GB zapasu.
  • Could not reserve enough space for object heap — Komenda startowa żąda więcej heapu, niż oferuje pakiet. Sprawdź wartość w zakładce Startup.
  • Can't keep up! Is the server overloaded? — To niemal zawsze problem z CPU lub tickami; dodatkowy RAM nic tu nie zmieni. Przeanalizuj go z pomocą poradnika o Sparku.
  • Modpack nadal działa wolno mimo zalecanej ilości RAM-u — Zalecenie autora packa dotyczy klienta. Dla serwera dolicz 2–4 GB, a przy ciężkich packach jak ATM10 przyjmij co najmniej 10–12 GB.

Jaki pakiet wybrać?

Wiesz już, ile GB potrzebujesz? Sprawdź, który pakiet do tego pasuje, w naszym artykule Jaki pakiet Minecraft wybrać? albo przejdź od razu do pakietów Minecraft w MC-Node. Wahasz się między dwoma rozmiarami? Zacznij od mniejszego pakietu: upgrade możesz zrobić w każdej chwili z panelu klienta, a Twoje światy, pluginy i ustawienia pozostaną nietknięte.