SSD Nodes Learn 🎉 VPS vanaf $5.50/mnd
Gidsen Matt ConnorDoor Matt Connor · Bijgewerkt 2026-08-13

De juiste VPS kiezen voor een gameserver

Een goede gameserver VPS vereist een hoge single core snelheid en voldoende RAM. Ontdek waar u op moet letten bij latency, poorten, systemd restarts en back-ups voor uw server.

Welk type gaming-VPS bedoelt u?

Een VPS voor gameservers is een goede aankoop voor één specifiek doel: het draaien van een dedicated server waar u en uw vrienden vanaf uw eigen computers verbinding mee maken. Het is een slechte aankoop voor het andere doel dat mensen vaak met deze term bedoelen, namelijk het spelen van de game op de VPS zelf via een remote desktop. Deze twee taken vereisen tegenovergestelde hardware. Een dedicated server heeft behoefte aan één snelle CPU-core en voldoende RAM om de spelwereld in het geheugen te houden. Voor het spelen van games is een GPU (graphics processing unit) vereist, en een standaard VPS-abonnement beschikt hier niet over.

Alles wat hieronder volgt, heeft betrekking op het eerste doel. Het tweede doel is de moeite waard om even bij stil te staan, omdat veel mensen hiervoor de verkeerde server aanschaffen.

Waarom u geen games kunt spelen op een VPS

Een standaard VPS biedt u virtuele CPU-cores en geen grafische kaart. Er wordt niets doorgegeven vanaf de fysieke host, waardoor er geen hardware-renderer beschikbaar is voor een game. U kunt zelf controleren wat u daadwerkelijk heeft:

sudo apt install -y pciutils
lspci | grep -iE "vga|3d"

Het antwoord is een virtuele beeldschermadapter, zoals een Cirrus Logic- of virtio GPU-apparaat. Dit bestaat zodat de webconsole van de provider een scherm aan u kan tonen; er is geen 3D-versnelling aanwezig. Installeer een desktopomgeving en een VNC-server daarop, en glxinfo -B rapporteert de renderer als llvmpipe, wat de software-renderer van Mesa is die op de CPU draait. Een moderne 3D-game die door de CPU wordt getekend, draait op enkele frames per seconde; het is dus onspeelbaar nog voordat er ook maar iets de server verlaat. Windows-instanties lopen tegen hetzelfde probleem aan. Veel titels sluiten direct bij het opstarten af met de melding dat ze geen Direct3D-apparaat konden aanmaken, omdat er geen beeldschermadapter is om dit op te doen.

Het tweede probleem is de verbinding terug naar u. Spelen op een externe machine betekent dat elk frame wordt gecodeerd naar video, over het internet wordt verstuurd en op uw scherm wordt gedecodeerd. Dat voegt encodering- en decoderingstijd toe bovenop de eigen input-lag van de game, en RDP en VNC zijn ontworpen voor desktops in plaats van voor 60 frames per seconde aan beweging. Cloud-gamingservices lossen dit op met echte GPU-hardware en een specifiek daarvoor ontwikkeld streamingprotocol. Een standaard VPS heeft geen van beide. Als u wilt spelen, huur dan GPU-capaciteit. Als u wilt hosten, lees dan verder.

Wat een dedicated game server daadwerkelijk nodig heeft

Een game server is een simulatie-loop. Deze houdt de wereld in het geheugen vast en voert deze een vast aantal keer per seconde uit. Elke verbonden speler ontvangt vervolgens het deel van de wereld dat zij kunnen zien.

Deze structuur bepaalt de hardware-eisen. De loop draait grotendeels op één thread, waardoor de kloksnelheid van de core belangrijker is dan het aantal cores. De wereld bevindt zich in het geheugen, waardoor RAM meestal de eerste beperkende factor is. De schijf is inactief tijdens het spelen, maar intensief belast bij het laden en opslaan. Uw netwerkpad bepaalt de ping, en geen enkel abonnementstype verandert dit.

Single-core snelheid is belangrijker dan het aantal cores

De meeste gameservers verwerken de wereldstatus op één hoofdthread. De tick-loop van Minecraft en de server-frame van de Source-engine werken beide op deze manier. Die tick heeft een deadline. Minecraft Java draait op 20 ticks per seconde, wat elke tick een budget van 50 milliseconden geeft. Wanneer het werk niet binnen die tijd past, geeft de server exact dit weer:

[12:04:51] [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 2547ms or 50 ticks behind

Die regel betekent dat één thread tijd tekortkwam. Het toevoegen van cores geeft die thread niet meer tijd. Een abonnement met 2 snelle vCPU's behoudt een tick-rate die een abonnement met 8 trage vCPU's niet haalt, omdat slechts één van die 8 het relevante werk uitvoert.

Meet de single-thread snelheid voordat u ergens voor kiest:

sudo apt install -y sysbench
sysbench cpu --cpu-max-prime=20000 --threads=1 run

Lees de events per second regel. Het getal op zichzelf zegt niets, maar is zeer waardevol als vergelijking. Voer dit dus uit op twee kandidaat-abonnementen en leg de resultaten naast elkaar. Een volledige VPS-benchmark behandelt schijf- en netwerkprestaties op dezelfde wijze.

Extra cores zijn nog steeds nuttig. Ze draaien de tweede gameserver, de database, de nachtelijke back-up en de chunk-pre-generator zonder tijd te stelen van de tick-thread. Serversoftware is ook steeds beter in staat om taken te verdelen; Paper, een populaire fork van Minecraft-servers, verplaatst bepaalde taken naar buiten de hoofd-tick-thread. De ideale configuratie is daarom een klein aantal snelle cores, in plaats van veel trage.

Eén getal staat nooit op de pagina met abonnementen, maar dit getal bepaalt of de snelle core waarvoor u betaalt ook echt van u is:

vmstat 1 5

De st kolom geeft het percentage aan van de tijd dat uw virtuele CPU klaar was om te draaien, maar de fysieke host de core aan iemand anders toewees. Een constante st van meer dan enkele procenten betekent dat de host overbezet is. Spelers ervaren dit als haperingen, terwijl top op uw machine nog steeds aangeeft dat de CPU inactief is, omdat die inactieve tijd niet aan u beschikbaar is.

Hoeveel RAM heeft een gameserver nodig?

ChartCommon starting RAM per game server (published guidance, not a measurement)
The data behind this chart
[
  {
    "label": "Minecraft Java, vanilla",
    "players": 10,
    "ram_gb": 2
  },
  {
    "label": "Minecraft Java, large modpack",
    "players": 10,
    "ram_gb": 8
  },
  {
    "label": "Valheim",
    "players": 10,
    "ram_gb": 4
  },
  {
    "label": "Palworld",
    "players": 32,
    "ram_gb": 16
  }
]

Dit zijn de initiële toewijzingen die de documentatie van de game en het modpack publiceren, peildatum augustus 2026. Dit zijn richtlijnen, geen waarden gemeten op één specifieke machine. Vanilla Minecraft Java draait soepel met 2 GB heap voor ongeveer 10 spelers. Voor hetzelfde aantal spelers in een groot modpack is 8 GB gewenst, omdat mods entiteiten en gegenereerde structuren toevoegen die allemaal in die heap worden geladen. Het door Valheim opgegeven minimum is 2 GB, terwijl beheerders met een kleine wereld rapporteren dat het proces dichter bij de 3 GB uitkomt; 4 GB is daarom een verstandig startpunt. Palworld is de uitschieter met 16 GB voor het maximum van 32 spelers, zoals aanbevolen door Pocketpair.

RAM schaalt niet mee met het aantal verbindingen. Het schaalt mee met de geladen wereld. Elke speler houdt de regio om zich heen geladen; twee spelers die bij elkaar staan kosten dus veel minder geheugen dan twee spelers die aan tegenovergestelde kanten van de kaart aan het verkennen zijn. Daarom is "RAM per speler" slechts een ruwe indicatie, terwijl "RAM per actief gebied" de werkelijke bepalende factor is. Dit verklaart waarom een kleine groep die graag verkent, een plan dat is gedimensioneerd voor het dubbele aantal spelers, kan ontgroeien.

Java-servers vereisen twee extra regels. Stel de minimale en maximale heap in op dezelfde waarde, zodat de JVM nooit pauzeert om het formaat aan te passen:

java -Xms4G -Xmx4G -jar server.jar nogui

Houd daarnaast reservegeheugen vrij. De JVM gebruikt geheugen buiten de heap die u hebt toegewezen voor thread-stacks en native buffers, en de kernel heeft page cache nodig om wereld-bestanden snel te lezen. Op een machine met 6 GB RAM is een heap van 4 GB verstandig, terwijl 6 GB onverstandig is.

De twee geheugenfouten zien er totaal verschillend uit; leer beide signalen herkennen. Een heap die te klein is, genereert een foutmelding binnen Java en de server blijft meestal moeizaam doordraaien:

java.lang.OutOfMemoryError: Java heap space

Een heap die groter is dan de beschikbare fysieke capaciteit van de machine, zorgt ervoor dat het proces van buitenaf wordt beëindigd. De console toont alleen Killed en het bewijs is terug te vinden in het kernel-logboek:

sudo dmesg -T | grep -i "out of memory"

Het toevoegen van swap voorkomt het beëindigen van het proces, maar lost niets op. Een tick-loop die de wereld moet inlezen vanaf swap mist elke deadline, waardoor uw spelers een bevroren server ervaren in plaats van een gecrashte.

Een opmerking over versies, actueel per augustus 2026: Minecraft Java 1.20.5 en later vereisen Java 21. Een oudere runtime start wel, maar faalt vervolgens met een "unsupported class file version"-fout. Dit leest als een compiler-melding en verwart iedereen die dit voor het eerst tegenkomt.

sudo apt install -y openjdk-21-jre-headless
java -version

Is schijfsnelheid van belang voor een gameserver?

Minder dan men tijdens het spelen verwacht, maar zeer veel op twee specifieke momenten. De wereld wordt bij het opstarten in het geheugen geladen en bij een automatische opslag teruggeschreven; schijfsnelheid uit zich dus in een trage opstarttijd en een pauze tijdens het opslaan. Daartussen worden de meeste leesacties vanuit het RAM afgehandeld.

Twee factoren zorgen ervoor dat de schijf belangrijker is dan deze samenvatting doet vermoeden. Bij verkenning worden nieuwe chunks of zones vanaf de schijf geladen terwijl spelers zich verplaatsen, en die leesactie moet binnen het tick-budget vallen. Een automatische opslag van een grote wereld schrijft veel data tegelijk weg; op een traag volume blokkeert deze schrijfactie de loop lang genoeg om de bovenstaande "Can't keep up"-waarschuwing te genereren. Beide zijn latentieproblemen in plaats van doorvoerproblemen, en daarom is het verschil tussen NVMe en SATA SSD op een VPS hier belangrijker dan de geadverteerde megabytes per seconde suggereren. Waar het om gaat, is hoe lang één kleine operatie duurt.

Houd bij het bepalen van de schijfgrootte rekening met groei. Een wereld groeit telkens wanneer iemand een nieuw gebied verkent, en uw back-ups vermenigvuldigen de totale omvang. Voer du -sh world een maand lang wekelijks uit om uw werkelijke groeipercentage te bepalen.

Tick rate, ping en het verschil daartussen

De tick rate is het aantal keer per seconde dat de server de wereld opnieuw berekent. Minecraft Java draait op 20. Servers met de Source engine draaien doorgaans op 64. Een hogere waarde is in Minecraft niet te koop, omdat de rate onderdeel is van het ontwerp van het spel; het doel is dus om 20 vast te houden in plaats van dit te overschrijden.

Ping is de retourtijd tussen één speler en de server. Deze twee factoren leiden tot verschillende klachten, dus scheid deze voordat u geld uitgeeft. Wanneer de server ticks mist, ervaart iedereen op hetzelfde moment 'rubber-banding' en vermeldt het serverlogboek dit in duidelijke tekst. Wanneer één speler een lang netwerkpad heeft, ondervindt alleen die speler vertraging en functioneert de rest van de groep naar behoren. Een krachtigere CPU lost het tweede scenario nooit op.

Latency wordt bepaald door locatie, niet door het abonnement

Licht in glasvezel legt ongeveer 200 kilometer per milliseconde af. Een round-trip beslaat de afstand twee keer, dus de ondergrens is ruwweg 1 ms per 100 km tussen de speler en de server. Geen enkele provider kan sneller zijn en een upgrade van uw abonnement verandert hier niets aan.

ChartRound trip floor by distance, fibre physics only
The data behind this chart
[
  {
    "label": "Toronto to New York",
    "distance_km": 550,
    "rtt_floor_ms": 5.5
  },
  {
    "label": "Dallas to Chicago",
    "distance_km": 1290,
    "rtt_floor_ms": 12.9
  },
  {
    "label": "Dallas to Los Angeles",
    "distance_km": 1990,
    "rtt_floor_ms": 19.9
  },
  {
    "label": "New York to London",
    "distance_km": 5570,
    "rtt_floor_ms": 55.7
  },
  {
    "label": "Los Angeles to Sydney",
    "distance_km": 12070,
    "rtt_floor_ms": 120.7
  }
]

Dit zijn ondergrenzen berekend op basis van de grootcirkelafstand. Echte glasvezel loopt niet in een rechte lijn en elke router op het pad voegt een kleine vertraging toe. Een goed resultaat in de praktijk ligt daarom vaak rond het dubbele van de theoretische ondergrens. Een speler in Toronto die een server in New York bereikt, op 550 km afstand, heeft een ondergrens van 5.5 ms en zal doorgaans een waarde in de tien ms zien. Het traject van Los Angeles naar Sydney heeft een ondergrens van 120.7 ms; geen enkele investering kan dit versnellen.

Plaats de server daarom dicht bij de mensen die erop spelen. Als uw groep over een oceaan verspreid is, krijgt iemand altijd te maken met het lange pad. De eerlijkste oplossing is meestal de regio waar de meeste spelers zich bevinden.

Meet het pad in plaats van te gissen:

sudo apt install -y mtr-tiny
mtr -rwzc 100 203.0.113.10

Lees eerst de laatste regel. Die regel is de server; het pakketverlies en de latency daarvan bepalen hoe de game aanvoelt. Pakketverlies op een tussenliggende hop, terwijl de laatste hop schoon is, wordt bijna altijd veroorzaakt door ICMP-rate limiting op die router. Routers geven namelijk lagere prioriteit aan antwoorden op probe-pakketten, terwijl ze normaal verkeer wel correct doorsturen. Laat elke speler de meting uitvoeren richting de server, aangezien iedere speler een ander pad volgt.

Hoe de round-trip ondergrens wordt berekend

Licht in glas beweegt met ongeveer tweederde van de snelheid in een vacuüm, wat neerkomt op bijna 200 km per milliseconde. Een round-trip beslaat de afstand twee keer, dus de ondergrens in milliseconden is de afstand in kilometers gedeeld door 100. De afstand van New York naar Londen is 5.570 km; 5570 gedeeld door 100 geeft 55,7 ms. Elk gemeten getal zal hoger uitvallen, omdat kabels kustlijnen volgen en routers tijd nodig hebben om pakketten te verwerken.

Open alleen de poorten die de game nodig heeft

Een gameserver heeft slechts één of twee open poorten nodig en niets anders. De gebruikelijke standaardwaarden zijn:

  • Minecraft Java Edition: TCP 25565
  • Minecraft Bedrock Edition: UDP 19132
  • Valheim: UDP 2456 en UDP 2457
  • Palworld: UDP 8211
  • Source engine games zoals Counter-Strike 2: UDP 27015

Raadpleeg de documentatie van de game zelf, aangezien diverse titels een extra query-poort gebruiken. Valheim is hier het duidelijkste voorbeeld van: 2456 verwerkt het gameverkeer en 2457 beantwoordt de Steam-serverquery die ervoor zorgt dat uw server in de browserlijst verschijnt. Het openen van deze poorten via TCP heeft geen zin, omdat Valheim uitsluitend UDP gebruikt.

Sta SSH toe voordat u de firewall inschakelt, anders sluit u uzelf buiten van uw eigen server:

sudo ufw allow 22/tcp
sudo ufw allow 25565/tcp
sudo ufw enable
sudo ufw status verbose

Veel providers beheren ook een netwerkfirewall in hun configuratiescherm, los van de firewall op de server zelf. Een poort die openstaat in ufw maar daar gesloten is, weigert nog steeds verbindingen. Het symptoom is vanaf de buitenkant identiek, dus controleer beide locaties voordat u configuratiebestanden gaat bewerken.

Het controleren van een TCP-poort vanaf een andere machine is eenvoudig:

sudo apt install -y netcat-openbsd
nc -vz 203.0.113.10 25565

UDP kan niet op die manier worden getest. Een gesloten UDP-poort is normaal gesproken stil, dus een test die geen antwoord krijgt, vertelt u niets. Controleer het in plaats daarvan vanaf de serverzijde en kijk of het gameproces is gekoppeld aan de poort die u verwacht:

sudo ss -lunp | grep 2456

Stel RCON, het remote console protocol, nooit bloot aan het internet. Het is een enkel wachtwoord dat via een onversleutelde verbinding wordt verstuurd, standaard op poort 25575. Koppel dit aan 127.0.0.1 en benader het via een SSH-tunnel. Draai de gameserver bovendien als een eigen gebruiker zonder privileges, zodat een bug in een mod geen toegang krijgt tot de rest van de machine. De eerste tien minuten op een nieuwe VPS behandelt het gebruikersaccount en de SSH-beveiliging waarvan deze sectie uitgaat dat u deze al heeft uitgevoerd.

De server uitvoeren onder systemd voor automatische herstart

Een server die handmatig wordt gestart in een SSH-sessie stopt zodra de sessie wordt beëindigd en start niet opnieuw na een reboot. systemd lost beide problemen op. Maak /etc/systemd/system/minecraft.service aan:

[Unit]
Description=Minecraft Java server
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms4G -Xmx4G -jar server.jar nogui
Restart=on-failure
RestartSec=15
TimeoutStopSec=180

[Install]
WantedBy=multi-user.target

Restart=on-failure zorgt ervoor dat de server na een crash weer opstart, maar uitgeschakeld blijft na een gecontroleerde afsluiting; dit is het gewenste gedrag. Restart=always werkt tegen wanneer u de server bewust stopt. TimeoutStopSec=180 is belangrijker dan het lijkt. systemctl stop verstuurt een SIGTERM; de standaard Minecraft-server vangt dit signaal op, slaat de wereld op en sluit vervolgens af. Wanneer de time-out verloopt, verstuurt systemd een SIGKILL. Een grote wereld heeft soms meer dan de standaard 90 seconden nodig om naar de schijf te schrijven; alles wat op dat moment nog niet is opgeslagen, gaat verloren bij een SIGKILL.

sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
sudo journalctl -u minecraft -f

Een succesvolle start eindigt met een regel zoals Done (12.345s)! For help, type "help". Als de unit blijft wisselen tussen activating en failed, bevat journalctl -u minecraft -n 50 de reden. Meestal is dit een onjuist pad in WorkingDirectory of een heap-grootte die de capaciteit van de server overschrijdt.

systemd biedt geen interactieve console, dus houd hier vooraf rekening mee. Gebruik RCON op localhost voor commando's, of draai de server binnen een tmux-sessie. Dit is dezelfde gewoonte die een langlopende Claude Code-sessie op een VPS actief houdt tussen logins door.

Games die via Steam worden gedistribueerd, vereisen SteamCMD voordat u met deze stappen begint. Het Ubuntu-pakket is een 32-bit binary, wat de reden is voor de architectuur-regel. Slaat u die regel over, dan meldt apt dat er geen installatiekandidaat beschikbaar is:

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd

Sommige gameservers verbruiken meer geheugen naarmate ze langer draaien. Een geplande herstart tijdens rustige uren is hiervoor de geaccepteerde oplossing in plaats van een definitieve fix. Een systemd-timer die systemctl restart aanroept, is overzichtelijker dan een cron-taak, omdat systemctl list-timers precies toont wanneer de volgende uitvoering plaatsvindt.

Maak volgens een schema back-ups van de wereld

Alles op een gameserver is vervangbaar, behalve de map met de wereld en de spelersgegevens. Het opnieuw installeren van de game kost minuten. Het opnieuw opbouwen van wat uw groep heeft gebouwd, kost maanden.

Een veilige back-up wordt gemaakt terwijl er niets wordt weggeschreven. De server een minuut stoppen is de eenvoudigste manier om dit te garanderen:

sudo systemctl stop minecraft
sudo tar czf /var/backups/mc-$(date +%F).tgz -C /opt/minecraft world world_nether world_the_end
sudo systemctl start minecraft

Als een nachtelijke pauze onacceptabel is, flush de wereld dan eerst. In de Minecraft-console stopt save-off het automatisch opslaan, schrijft save-all flush alles weg wat nog in de wachtrij staat, en schakelt save-on het automatisch opslaan weer in zodra het kopiëren is voltooid. Het kopiëren van een wereld terwijl de server midden in een schrijfactie zit, kan resulteren in een regiobestand dat slechts voor de helft is geschreven; u ontdekt dit pas op de dag dat u het herstel nodig heeft.

Bewaar ten minste één kopie buiten de machine. Een back-up op dezelfde schijf overleeft de schijf niet, en een snapshot van de provider is eerder een gemak dan een back-up, omdat deze zich in hetzelfde account bevindt dat u mogelijk verliest. Geplande restic-back-ups naar externe opslag beheren retentie en ontdubbeling, zodat een maand aan nachtelijke wereldkopieën uw volume niet vult.

Herstel vervolgens een back-up. Een back-up die u nooit heeft hersteld, is een gok. Pak het archief van gisteravond uit in een reservemap, laat een testserver ernaar verwijzen en bevestig dat de wereld laadt en de gebouwen staan waar u ze heeft achtergelaten.

Controleer de server voordat u zich vastlegt

Koop liever één maand dan een jaar en test de server één avond met echte spelers. Voer de single-thread sysbench-meting uit en laat vervolgens elke speler mtr naar de server uitvoeren. De volledige VPS-benchmarkprocedure doorloopt deze tools en toont hoe een slecht resultaat eruitziet, en wat een VPS daadwerkelijk per maand kost helpt u te controleren of u betaalt voor de resource die uw server beperkt, in plaats van voor de specificatie die het grootst op de pagina van het abonnement staat vermeld.

Twee artikelen gaan verder waar dit artikel ophoudt. Een Minecraft-server bouwen op een VPS is de stapsgewijze versie van alles wat hierboven staat, toegepast op de game waar de meeste mensen mee beginnen. De bredere lijst met zaken die een VPS kan draaien is het lezen waard als u wilt dat de server tussen de game-avonden door ook andere nuttige taken uitvoert.

FAQ

Kan ik games spelen op een VPS in plaats van een gaming-pc te kopen?

Nee. Een standaard VPS heeft geen GPU, enkel een virtuele display-adapter voor de console van de provider. Zodra een desktopomgeving is geïnstalleerd, rapporteert glxinfo -B de software-renderer llvmpipe en draait een 3D-game met slechts enkele frames per seconde. Zelfs met een gekoppelde GPU voegt remote play video-encoding en -decoding toe aan de round-trip van elk frame; RDP en VNC zijn hier nooit voor ontworpen. Een VPS is bedoeld voor het hosten van de dedicated server waar uw groep verbinding mee maakt. Huur GPU-tijd of gebruik een cloud-gamingservice als u wilt gamen.

Hoeveel CPU-cores heeft een gameserver nodig?

Twee snelle cores presteren voor de meeste games beter dan acht langzame, omdat de wereldsimulatie op één hoofdthread draait en extra cores die thread niet kunnen helpen om de deadline van 50 ms te halen. Vergelijk kandidaat-abonnementen met sysbench cpu --cpu-max-prime=20000 --threads=1 run en bekijk het aantal events per second. Extra cores zijn de investering waard wanneer u ook een tweede server of een database op dezelfde machine draait, aangezien die workloads dan kunnen draaien zonder processortijd van de tick-thread te stelen.

Hoeveel RAM heeft een Minecraft-server nodig?

Ongeveer 2 GB aan heap voor een vanilla-wereld met ongeveer 10 spelers, en 8 GB voor een groot modpack bij hetzelfde aantal spelers. Stel -Xms en -Xmx in op dezelfde waarde en houd 1 GB tot 2 GB van de machine vrij voor het besturingssysteem, omdat de JVM geheugen buiten de heap gebruikt en de kernel page cache nodig heeft. Een heap die groter is dan de beschikbare capaciteit van de machine leidt ertoe dat het proces door de kernel wordt beëindigd; dit verschijnt in dmesg als een out of memory-melding in plaats van als een Java-fout.

Waarom ervaren mijn spelers lag terwijl de server vrije CPU en RAM heeft?

Twee oorzaken passen bij deze beschrijving. Controleer het serverlogboek op Can't keep up! Is the server overloaded?; dit betekent dat de enkele hoofdthread het tick-budget van 50 ms heeft overschreden terwijl de andere cores inactief waren. Als die regel ontbreekt, ligt het probleem bij het netwerkpad. Laat elke speler mtr -rwzc 100 203.0.113.10 uitvoeren naar uw serveradres en bekijk de laatste regel. Controleer ook de kolom st in vmstat 1: steal time van meer dan enkele procenten betekent dat de host overboekt is, waardoor de inactieve CPU die u ziet in werkelijkheid niet voor u beschikbaar is.

Welke poorten moet ik openen voor een gameserver?

Alleen de poort van de game zelf, plus SSH. Minecraft Java gebruikt TCP 25565, Minecraft Bedrock gebruikt UDP 19132, Valheim gebruikt UDP 2456 en 2457, en Palworld gebruikt UDP 8211. Voeg de SSH-regel toe voordat u ufw enable uitvoert, anders verliest u de toegang tot de machine. Houd er rekening mee dat veel providers een tweede firewall in hun configuratiescherm hanteren; de poort moet in beide worden geopend. Stel RCON op poort 25575 nooit open naar het internet, omdat dit wachtwoord in leesbare tekst (plaintext) wordt verzonden.