Poradnik dla administratorów

Ile RAM na serwer Minecraft? Dobór pamięci bez zgadywania

Gotowa tabela punktów startowych, sposób ustawienia Xmx i procedura pomiaru pod realnym obciążeniem. Bez obietnicy, że samo dodanie RAM naprawi niski TPS.

Poradnik dla administratorówAutor: Redakcja MinecraftSerwer.plAktualizacja: 29 lipca 202614 min czytania

Dla małego serwera Paper zacznij zwykle od 3-4 GB sterty Java, ale nie kupuj pamięci wyłącznie na podstawie liczby slotów. Światy, pluginy, liczba aktywnych graczy, generowanie chunków i częstotliwość garbage collectora trzeba zmierzyć podczas prawdziwej gry.

Odpowiedź w skrócie

Najważniejsze konkrety

1-5 graczy
Paper z kilkoma pluginami: zacznij od 3-4 GB Xmx i zmierz użycie podczas wspólnej gry.
5-15 graczy
Najczęstszy punkt startowy to 4-6 GB Xmx, zależnie od świata, pluginów i dystansu symulacji.
Zapas
Nie ustawiaj Xmx na pełny limit hostingu; zostaw zwykle 15-25% na JVM, pamięć poza stertą i narzut środowiska.
Nie tylko RAM
Niski TPS przy wolnym głównym wątku wymaga szybszego CPU lub optymalizacji, nie kolejnych gigabajtów.

Ile RAM na serwer Minecraft? Tabela punktów startowych

Nie istnieje przelicznik „liczba slotów × RAM”. Sloty są tylko limitem logowania, a pamięć zużywają między innymi załadowane chunki, encje, dane pluginów, pamięć podręczna, generowanie świata i sami aktywni gracze. Poniższe wartości to rozsądne punkty startowe dla Paper, nie gwarancja wydajności.

ScenariuszPunkt startowy XmxCo sprawdzić pod obciążeniem
1-5 graczy, kilka lekkich pluginów3-4 GBGenerowanie nowych chunków, teleporty i pierwszy pełny backup
5-15 graczy, typowy Survival4-6 GBFarmy, aukcje, mapy internetowe i godzina największego ruchu
15-30 graczy, rozbudowane pluginy6-8 GBPauzy GC, liczba światów, encje, placeholdery i bazy danych pluginów
Powyżej 30 graczy lub ciężki modpack8 GB i więcej po teścieOsobny profil dla szczytu; modpack licz według jego dokumentacji i realnego zestawu modów

Jeżeli pięciu graczy stoi na spawnie, zużycie będzie inne niż wtedy, gdy każdy leci elytrą w innym kierunku i generuje teren. Dlatego dobór kończy się dopiero po teście odpowiadającym prawdziwemu stylowi gry.

Co faktycznie zużywa pamięć serwera?

Światy i chunki. Każdy załadowany fragment świata przechowuje bloki, encje i dane potrzebne do symulacji. Więcej światów, wysoki view-distance, wysoki simulation-distance i gracze rozrzuceni po mapie zwiększają jednoczesny zestaw danych w pamięci.

Pluginy. Liczba JAR-ów nie mówi wszystkiego. Prosty plugin z komendą może być lekki, a mapa internetowa, system skryptów, rozbudowany antycheat lub źle napisany cache potrafi przechować znacznie więcej danych. Po zmianie zestawu pluginów pomiar trzeba powtórzyć.

Generowanie świata i encje. Nowe chunki obciążają przede wszystkim procesor i dysk, ale powiększają też zbiór aktywnych danych. Farmy z tysiącami przedmiotów, zwierząt lub lejów mogą jednocześnie podnieść MSPT i zużycie pamięci. Więcej RAM nie zwalnia z usunięcia źródła nadmiernej liczby encji.

Xms, Xmx i zapas poza stertą

-Xms ustawia początkowy rozmiar sterty Java, a -Xmx jej maksymalny rozmiar. Aktualna dokumentacja Paper pokazuje prosty start z 4 GB:

java -Xms4G -Xmx4G -jar paper.jar --nogui

Na dedykowanej maszynie równe Xms i Xmx dają przewidywalny rozmiar sterty. W ograniczonym kontenerze nadal najważniejsze jest, aby Xmx nie zajmował całego limitu. Proces Java korzysta również z pamięci poza stertą: kodu JVM, buforów bezpośrednich, wątków i bibliotek. Panel hostingu może pokazywać cały proces, a spark tylko wybrane metryki - te liczby nie muszą być identyczne.

Praktyczna rezerwa

Dla limitu 8 GB zacznij zwykle od Xmx 6 GB. Dla 16 GB można testować 12-14 GB. Zostawienie 15-25% limitu zmniejsza ryzyko, że kontener zabije proces mimo wolnego miejsca w samej stercie. Na VPS-ie trzeba dodatkowo zostawić zasoby systemowi, bazie danych i panelowi.

Jak zmierzyć RAM zamiast zgadywać?

Pomiar wykonuj w godzinie największego ruchu albo podczas kontrolowanego testu. Paper 1.21+ zawiera spark. Zacznij od /spark healthreport, a przy lagach zbierz profil:

/spark profiler start --timeout 600

Raport ma obejmować moment, w którym gracze generują świat, używają farm i wykonują typowe teleporty. Zapisz liczbę graczy, MSPT, użycie sterty przed oraz po pełnym cyklu garbage collectora i czas przerw GC. Paper wyjaśnia, że rosnąca i opadająca „piła” użycia sterty jest normalna. Sam fakt, że proces wykorzystuje przydzielony RAM, nie oznacza wycieku.

Alarmem jest OutOfMemoryError, zabijanie procesu po przekroczeniu limitu kontenera, bardzo długie lub częste pauzy GC albo użycie, które po kolejnych pełnych cyklach GC stale rośnie przy porównywalnym obciążeniu. Wtedy najpierw ustal, który plugin lub typ danych rośnie. Polecenie /paper heap tworzy duży zrzut do analizy i nie powinno być pierwszym odruchem na produkcji.

Kiedy problemem jest CPU, a nie RAM?

Serwer może mieć 20 GB wolnej pamięci i nadal lagować. Główna pętla gry musi zakończyć tick w 50 ms, aby utrzymać 20 TPS. Jeśli spark pokazuje wysokie MSPT przez generowanie chunków, plugin, sztuczną inteligencję mobów lub farmę, zwiększenie Xmx nie skróci tej pracy.

  • Niski TPS, wolna sterta: szukaj pracy głównego wątku, wolnego rdzenia CPU, pluginów, encji i chunków.
  • Dobry TPS, błąd OOM: sprawdź limit kontenera, Xmx, pamięć poza stertą i rosnące dane pluginów.
  • Długie pauzy co pewien czas: porównaj wykres GC, zapis świata, backupy i zadania okresowe.
  • Lag jednego gracza: sprawdź ping i trasę sieciową; RAM serwera zwykle nie jest przyczyną.

Jak ograniczyć zużycie bez psucia rozgrywki?

Zacznij od usunięcia nieużywanych światów i pluginów oraz aktualizacji dodatków z potwierdzonym problemem. Ustaw world border i wygeneruj teren przed premierą, aby gracze nie tworzyli wielu nowych chunków jednocześnie. Dostosuj view-distance i simulation-distance małymi krokami, mierząc wpływ na MSPT i doświadczenie graczy.

Nie kopiuj gotowej konfiguracji „optymalizacyjnej” bez sprawdzenia zmian w mechanice. Ograniczenie mobów, zasięgu symulacji lub częstotliwości ticków może poprawić metrykę kosztem farm i zasad Survival. Wprowadzaj jedną grupę ustawień, zapisuj wynik i zachowuj możliwość cofnięcia.

Przykład: hosting z limitem 8 GB

  1. Rezerwujesz 2 GB na narzut JVM, bufory i bezpieczny margines kontenera.
  2. Ustawiasz -Xmx6G; Xms dobierasz do środowiska, np. 4-6 GB.
  3. Uruchamiasz test z docelową liczbą graczy, generowaniem terenu i typowymi pluginami.
  4. Zbierasz healthreport oraz profil, a wynik porównujesz z MSPT i logami.
  5. Jeśli sterta ma zapas, lecz MSPT przekracza 50, nie kupujesz RAM w ciemno - diagnozujesz pracę głównego wątku.

Własny serwer uruchomisz według poradnika instalacji Paper, a interpretację raportu znajdziesz w instrukcji diagnozy spark. Referencją dla zachowania pamięci pozostaje dokumentacja rozwiązywania problemów PaperMC.

Do wykonania

Plan działania krok po kroku

  1. 1

    Ustal limit pamięci hostingu i odejmij 15-25% zapasu; otrzymaną wartość potraktuj jako górny punkt startowy dla Xmx.

  2. 2

    Uruchom serwer z kontrolowaną wartością Xmx i odtwórz typowe obciążenie: gracze, teleporty, generowanie świata, farmy i eventy.

  3. 3

    Zbierz /spark healthreport oraz profil podczas szczytu, sprawdzając stertę, garbage collector, MSPT i główny wątek.

  4. 4

    Zwiększ pamięć dopiero przy realnej presji na stertę lub OOM; przy niskim TPS bez presji na RAM popraw pluginy, encje, chunki albo CPU.

Redakcja MinecraftSerwer.plPunkty startowe są estymacją, nie wymaganiem Paper. Sposób działania sterty, Xms i Xmx sprawdzono w aktualnej dokumentacji PaperMC.
Opublikowano: 29 lipca 2026Zaktualizowano: 29 lipca 2026
Najczęstsze pytania

Pytania i odpowiedzi

Czy 4 GB RAM wystarczy na serwer Minecraft?

Często wystarczy jako punkt startowy dla małego serwera Paper z kilkoma lekkimi pluginami i grupą do około 5-10 aktywnych graczy. Potwierdź to pomiarem podczas generowania świata i szczytu aktywności.

Czy ustawienie większego Xmx naprawi niski TPS?

Tylko jeśli problemem jest realny brak pamięci lub zbyt częsta praca garbage collectora. Jeśli główny wątek zużywa ponad 50 ms na tick przez pluginy, encje lub generowanie chunków, więcej RAM nie usuwa przyczyny.

Czy użycie prawie całego RAM oznacza wyciek pamięci?

Nie. Sterta Java rośnie i garbage collector zwykle nie oddaje od razu pamięci systemowi. Alarmem są błędy OutOfMemoryError, długie pauzy GC, rosnące użycie po kolejnych pełnych cyklach GC lub przekraczanie limitu kontenera.

Adres skopiowany - widzimy się w grze!
Potwierdzenie

Potwierdź działanie