RAM
Paměť je u Minecraftu nejčastější úzké hrdlo. Málo RAM znamená pády, hodně RAM znamená dlouhé pauzy garbage collectoru.
Kolik potřebuješ
| Scénář | RAM |
|---|---|
| Vanilla, do 10 hráčů | 2 GB |
| Paper + pluginy, do 20 hráčů | 4 GB |
| Paper + pluginy, do 40 hráčů | 6 GB |
| Malý modpack (do 100 modů) | 6 GB |
| Velký modpack (300+ modů) | 10–16 GB |
| Proxy (Velocity/Bungee) | 1 GB |
Proxy servery potřebují minimum paměti — nemají svět. Nekupuj pro ně velký tarif.
Nastavení Xms a Xmx
-Xms— paměť alokovaná při startu.-Xmx— maximální paměť, kterou Java smí použít.
-Xms4G -Xmx6GNenastavuj -Xmx na celou paměť tarifu. Java potřebuje rezervu mimo heap
(metaspace, vlákna). Při -Xmx8G na 8GB tarifu server zabije OOM killer a v
logu nezůstane žádná chybová hláška.
Pravidlo: -Xmx nastav na 75–80 % paměti tarifu.
| Tarif | Doporučené -Xmx |
|---|---|
| 4 GB | 3G |
| 6 GB | 5G |
| 8 GB | 6G |
| 16 GB | 13G |
Garbage collector
Pro servery s 6 GB a více se vyplatí ladit G1GC:
-Xms5G -Xmx5G
-XX:+UseG1GC
-XX:+ParallelRefProcEnabled
-XX:MaxGCPauseMillis=200
-XX:+UnlockExperimentalVMOptions
-XX:G1NewSizePercent=30
-XX:G1MaxNewSizePercent=40
-XX:G1HeapRegionSize=8M
-XX:G1ReservePercent=20
-XX:InitiatingHeapOccupancyPercent=15U 6 GB a víc nastav -Xms a -Xmx na stejnou hodnotu. Java pak nemusí
heap zvětšovat za běhu, což způsobuje krátké zámrazy.
Diagnostika OutOfMemoryError
Zkontroluj log
java.lang.OutOfMemoryError: Java heap spaceOvěř Xmx
Je nižší než limit tarifu?
Zjisti, co paměť žere
Plugin Spark:
/spark heapsummaryZvyš RAM nebo odeber mody
Co paměť požírá
| Příčina | Řešení |
|---|---|
Vysoký view-distance | sniž na 8 |
| Mnoho načtených chunků | omez chunk loadery |
| Modpack | více RAM, nic jiného nepomůže |
| Únik paměti v pluginu | aktualizuj nebo odeber |
| Dynmap | omez tiles-rendered-at-once |
Přidávání RAM neřeší únik paměti v pluginu — jen oddálí pád. Pokud musíš
restartovat každých pár hodin, hledej viníka přes /spark heapsummary.
Tipy
- Víc RAM neznamená vyšší TPS. TPS závisí na CPU.
- Sleduj graf paměti v Pterodactylu. Pila, která se blíží stropu, znamená problém.
Poznámka
Zobrazená spotřeba v Pterodactylu zahrnuje i paměť mimo Java heap. Bývá o 10–15 %
vyšší než -Xmx.