Com solucionar el lag d'un servidor de Minecraft
En aquesta pàgina
"El servidor va amb lag" pot voler dir tres problemes diferents, i cadascun té una solució diferent. Els retrocessos i els blocs que tornen a aparèixer després de trencar-los són el servidor que es queda enrere. Un ping que salta és la xarxa. Una imatge entretallada mentre la resta van bé és l'ordinador del mateix jugador.
Aquesta guia explica com distingir-los, com mesurar bé el lag del servidor amb TPS, MSPT i un perfil de spark, quins ajustos ajuden de debò a Paper i com saber quan la resposta és realment més RAM o una CPU més ràpida — i quan no ho és.
Lag del servidor, de la xarxa o del client?
| Què veuen els jugadors | Com confirmar-ho | |
|---|---|---|
| Lag del servidor | Tothom alhora: retrocessos, mobs que es congelen, blocs que tornen, xat amb retard | TPS per sota de 20, o temps de tick de 50 ms o més |
| Lag de xarxa | Un o uns quants jugadors: teletransports enrere, cops que no toquen | Ping alt per a aquests jugadors, mentre el TPS es manté a 20 |
| Lag del client | Un jugador: pocs fotogrames, estrebades en girar | FPS baixos a la pantalla F3 d'aquest jugador, xifres del servidor correctes |
La prova més ràpida és preguntar si tothom té lag en el mateix moment. Un servidor que es queda enrere congela tots els jugadors alhora; una mala connexió o un ordinador lent només afecta el seu propietari. La resta d'aquesta guia tracta del lag del servidor.
Lag per maquinari lent? Els servidors de Minecraft d'HytHost funcionen amb CPU Ryzen 7 i Intel i9 d'alta freqüència — des de €2.59/mes.
Veure plans de MinecraftPrimer mesura: TPS, MSPT i spark
Un servidor de Minecraft funciona a 20 ticks per segon, de manera que cada tick té 50 ms per acabar. Dues xifres descriuen com s'hi està aguantant:
- TPS (ticks per segon): 20 vol dir que el servidor arriba a temps; per sota de 20 el món s'alenteix.
- MSPT (mil·lisegons per tick): quant dura cada tick. Per sota de 50 ms hi ha temps de sobres; per sobre de 50 ms el servidor es queda enrere.
Paper té /tps i /mspt, però la seva pròpia documentació remet a spark, que va integrat a Paper des de la 1.21 i està disponible com a mod per a Fabric, Forge i NeoForge:
/spark tps /spark health /spark ping
/spark tps mostra el TPS dels últims segons i minuts i — més útil — la durada dels ticks com a mínim, mediana, percentil 95 i màxim. /spark ping mostra el ping dels jugadors, cosa que resol la pregunta "servidor o xarxa". /spark health hi afegeix CPU, memòria i disc.
Troba la causa amb un perfil de spark
Les xifres diuen que el servidor té lag; un perfil diu per què. Inicia'n un mentre hi ha lag i deixa'l funcionar uns quants minuts:
/spark profiler start --timeout 300
Quan acaba, spark publica un enllaç al seu visor web. Allà:
- Obre el Server thread — el fil principal que fa funcionar el món. El lag viu allà.
- Desplega les entrades amb els percentatges més alts: és on va el temps de tick.
- Canvia a la vista Sources per veure el temps repartit per plugin o mod. Un plugin o mod que s'emporta una gran part del fil principal sol ser la resposta.
Dues eines més ajuden amb el lag que va i ve: /spark tickmonitor informa de cada tick que s'allarga, i /spark profiler start --only-ticks-over 100 registra només els ticks lents, perquè un pic esporàdic no quedi diluït en la mitjana.
Les solucions que compten, per ordre
1. Distància de visió i de simulació
A server.properties, simulation-distance fixa fins a quina distància dels jugadors se simula realment el món — mobs, cultius, redstone — i view-distance fins a quina distància s'envien els chunks als jugadors. Totes dues valen 10 per defecte. Abaixar simulation-distance sol ser la millora individual més gran: prova entre 6 i 8, i mantén view-distance una mica més alt perquè el món continuï semblant obert. Són punts de partida, no valors oficials; mesura abans i després.
2. Pregenera el món
Generar chunks nous és una de les coses més costoses que fa un servidor, i els jugadors que exploren en direccions diferents l'obliguen a fer-ho constantment. El plugin (o mod) Chunky genera el mapa per endavant:
chunky radius 5000 chunky start chunky pause chunky continue
Executa'l quan no hi jugui ningú — una pregeneració en curs fa que el servidor mostri "Can't keep up" per disseny — i posa'l en pausa quan entrin jugadors.
3. Entitats i granges
Les granges de mobs, les sales de vilatans i les piles d'objectes són el desgast constant més habitual. A Paper i Spigot, entity-activation-range a spigot.yml controla com a prop ha de ser un jugador perquè una entitat faci el tick complet, i merge-radius fusiona els objectes llançats i les esferes d'experiència. Limita les granges de mobs amb un plugin o una norma, i neteja les piles d'objectes oblidades.
4. Tremuges i redstone
Les cadenes llargues de tremuges són costoses. A spigot.yml, ticks-per.hopper-transfer fixa cada quant mouen objectes, i el hopper.disable-move-event de Paper les accelera molt — però trenca els plugins de protecció que depenen d'aquest esdeveniment. Per a la redstone, el misc.redstone-implementation: ALTERNATE_CURRENT de Paper pot reduir molt el lag de la pols de redstone, però canvia com es comporta la pols, així que prova primer els teus mecanismes.
5. El plugin o mod del teu perfil
Si el perfil de spark assenyala un plugin o mod, aquesta és la solució: actualitza'l, rebaixa'n la configuració o substitueix-lo. Cap quantitat de RAM fa més ràpid un plugin mal escrit.
"El TPS és 20 però continua tenint lag"
Aquest és el cas més desconcertant, i gairebé sempre és un bloqueig de tick: la majoria de ticks són ràpids, però de tant en tant un dura centenars de mil·lisegons. La mitjana es manté a 20, però tothom nota la congelació.
- Comprova el temps de tick màxim a
/spark tps, o executa/spark tickmonitor. Pics de diversos centenars de mil·lisegons ho confirmen. - La causa habitual és un plugin que espera al fil principal — descarregant skins o caps de jugadors d'internet, enviant a un webhook, comprovant actualitzacions o una llicència, o desant un fitxer o una base de dades de manera síncrona. Mentre espera, el servidor no fa res.
- Perfila l'espera, no només el càlcul. Un perfil normal mostra la feina de la CPU; un fil que espera sembla inactiu. Fes servir
/spark profiler start --thread *per capturar on es gasta el temps, esperes incloses, i busca crides de xarxa o de fitxers al Server thread.
La solució és al plugin — crides asíncrones, o un altre plugin. Més RAM, una CPU més ràpida o una connexió millor no ajudaran, perquè al servidor no li falta res; està esperant.
Quan la resposta és realment RAM o CPU
Minecraft simula el món en un sol fil principal. Això té dues conseqüències:
- La velocitat de la CPU per nucli és el que més compta. Si spark mostra el Server thread ocupat amb feina normal del món — entitats, chunks, ticks de blocs — i el MSPT és alt, una CPU més ràpida ajuda allà on més nuclis no ho farien.
- La RAM només ajuda quan en falta. Senyals: el servidor es reinicia en arribar al límit de memòria, o les pauses de garbage collection dominen el perfil. Més enllà del que necessiten el món i els mods, més RAM no fa res per a la velocitat dels ticks — i un heap sobredimensionat i sense ajustar pot allargar les pauses de garbage collection.
Quanta RAM necessita un servidor, i els paràmetres d'arrencada que mantenen curta la garbage collection, s'expliquen a quanta RAM necessita un servidor de Minecraft. Triar entre Paper, Purpur i la resta es tracta a el millor programari de servidor de Minecraft.
El lag i el teu servidor d'HytHost
Tots els plans de Minecraft d'HytHost funcionen amb el mateix maquinari: CPU Ryzen 7 i Intel i9 amb boost de fins a 5.0 GHz, memòria DDR4 i emmagatzematge NVMe — la velocitat per fil de la qual depèn Minecraft. spark ja forma part de Paper, així que pots perfilar des de la consola de seguida.
Si el teu perfil mostra que al servidor realment li falta memòria per al seu món i els seus mods, passa a un pla superior des del panell; el món es queda on és. Si assenyala un plugin o una granja, arregla això primer — és gratis i funciona en qualsevol pla. Consulta l'allotjament de Minecraft, o els plans més grans a l'allotjament de Minecraft premium des de €11.65/mes.
Més espai per a modpacks i mons grans: MC Diamond amb 9 GB costa €11.65/mes, i les millores conserven el teu món.
Veure plans de MinecraftPreguntes freqüents
20 TPS, que és l'objectiu del joc. Es manté mentre cada tick duri menys de 50 ms (MSPT per sota de 50). Vigila també el percentil 95 i els temps de tick màxims a /spark tps, perquè una mitjana de 20 pot amagar congelacions curtes.
Només si al servidor realment li falta memòria, per exemple si es reinicia en arribar al límit de memòria o si la garbage collection domina el perfil. La major part del lag ve del fil principal: entitats, generació de chunks, redstone o un plugin lent, i més RAM no ho accelera.
Purpur està construït sobre Paper i afegeix moltes opcions de configuració i funcions de joc addicionals; no afirma oficialment ser més ràpid. Pel que fa al lag, els ajustos i els plugins del teu servidor compten molt més que triar entre tots dos.
El valor per defecte és 10 tant per a view-distance com per a simulation-distance. Abaixar simulation-distance a entre 6 i 8, aproximadament, sol ser el que més ajuda, perquè redueix l'àrea que simula el servidor. Mantén view-distance una mica més alt perquè el món continuï semblant obert, i mesura abans i després.
Executa /spark profiler start --timeout 300 mentre el servidor té lag. Aleshores spark publica un enllaç al seu visor: obre el Server thread, desplega les entrades amb els percentatges més alts i fes servir la vista Sources per veure quin plugin o mod s'emporta el temps.
Maquinari ràpid per a un món fluid
L'allotjament de Minecraft d'HytHost fa funcionar tots els plans amb CPU Ryzen 7 i Intel i9 d'alta freqüència i emmagatzematge NVMe, i les millores conserven el teu món — des de €2.59/mes.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursT'ha estat útil aquesta guia?