De melding "server thread hitch warning" in de FiveM-console betekent dat een script de hoofdthread langer dan 150 ms heeft geblokkeerd. Spelers merken dat als lag, teleportgriepen, voertuigen die bevriezen of NPC's die stoppen met reageren. Het probleem zit vrijwel altijd in een resource, niet in de hardware.
Wat er technisch gebeurt
De FiveM-server draait alles op een enkele thread. Elke tick moet binnen 16 ms zijn afgerond om 60 ticks per seconde te halen. Als een script 150 ms of meer nodig heeft voor een enkele operatie, drukt FiveM de hitch warning. De server loopt dan achter en moet inhalen, wat spelers als een korte bevriezing ervaren.
Stap 1: oorzaak vinden met resmon
Verbind met uw server en open de F8-console. Typ resmon 1. Er verschijnt een overlay die per resource het CPU- en geheugenverbruik toont. Elke resource boven 0,25 ms is het bekijken waard. Boven de 1 ms is verdacht. Boven de 5 ms is vrijwel zeker de oorzaak van uw hitch warnings.
Stap 2: server-side profiler
Resmon toont het client-side beeld. Voor server-side problemen gebruikt u de ingebouwde profiler:
- Typ in de serverconsole:
profiler record 500 - Wacht tot de opname klaar is.
- Typ:
profiler save mijnprofiel - Typ:
profiler view mijnprofiel
Er verschijnt een link die u in de browser opent. Het profiel toont per resource en per functie hoeveel tijd die heeft gebruikt. Zoom in op de pieken: dat zijn uw hitch-veroorzakers.
Stap 3: veelvoorkomende oorzaken
- Database-queries zonder index. Een query als
SELECT * FROM users WHERE identifier = 'steam:xxx'op een tabel zonder index opidentifierkan tientallen milliseconden duren per aanroep. Voeg de juiste indexes toe in uw database. - Synchrone loops in Lua of JavaScript. Een
while true dozonderWait()blokkeert de thread permanent. Elke loop in server-side code moet een wachttijd hebben. - Te veel exports per tick. Exports die elke tick worden aangeroepen in plaats van gecachet of op events gebaseerd te zijn, stapelen snel op.
- Ongeoptimaliseerde voertuig-YTD's. Custom voertuigen met 4096px-texturen terwijl FiveM intern op 1024px capt. De server moet de texturen streamen naar elke client.
- Te veel resources tegelijk laden. Honderd resources is gangbaar op een RP-server, maar elk script dat bij het opstarten data uit de database haalt veroorzaakt een piek.
Stap 4: oplossen
- Verwijder of schakel de zwaarste resource uit en kijk of de hitches stoppen.
- Vervang slecht gecodeerde gratis scripts door geoptimaliseerde alternatieven. Betaalde scripts van bekende ontwikkelaars zijn vaak beter geoptimaliseerd.
- Voeg database-indexes toe. De meest voorkomende:
ALTER TABLE users ADD INDEX (identifier); - Batch database-queries in plaats van ze per speler per seconde uit te voeren.
- Stel een automatische herstart in via txAdmin (elke 6 tot 12 uur) om geheugenlekken te beperken.
Zijn hitch warnings schadelijk voor de server?
Ze veroorzaken geen permanente schade, maar ze maken de speelervaring slecht. Bij herhaalde hitches raken spelers gedisconnect of lopen ze vast.
Lost meer RAM het probleem op?
Meestal niet. Hitch warnings zijn een CPU-probleem (de thread is geblokkeerd), geen geheugenproblemen. Meer RAM helpt alleen als de server actief aan het swappen is.
Hoe voorkom ik hitches bij het opstarten?
Hitch warnings bij het opstarten zijn normaal; alle resources laden hun data tegelijk. Het zijn de hitches tijdens het spelen die u moet oplossen.
De FiveM-pakketten van HostValues draaien op Ryzen 9-CPU's met hoge single-core kloksnelheid, wat de tick-tijd direct ten goede komt. Bij performance-vragen helpt ons supportteam met het analyseren van uw profiler-output.