Direct answer

Host CPU percentage and memory use alone do not identify the cause of server lag. Compare Linux process metrics, JVM heap and a Minecraft profiler during the same window.

Recommended procedure

  1. Run uptime, free -h and top -b -n 1 to inspect load averages, available RAM and busy processes.
  2. Use ps -eo pid,comm,%cpu,%mem,rss --sort=-%cpu | head to identify the Java process and competing workloads.
  3. On containers compare memory.max, memory.events and cpu.stat where available; match these readings with MSPT and player count.

What to change

uptime
free -h
top -b -n 1
ps -eo pid,comm,%cpu,%mem,rss --sort=-%cpu | head
  1. If an external backup or another Java process consumes CPU, schedule it outside peak hours.
  2. If memory pressure or swapping is evident, adjust the real workload/heap only after accounting for container limits.
  3. If the Linux host appears healthy but server MSPT is high, profile entities, plugins or chunk generation rather than guessing.

How to verify the result

Collect the same command outputs and spark profile during another comparable peak. Identify whether host contention, GC or server tick work changed.

Version and safety notes

Linux load average is not directly CPU percentage. free may show host RAM inside a container; MemAvailable differs from MemFree. Folia/Paper tick models also differ.

Official references

Was this article helpful?
Help us improve this article

Tell us what is missing, unclear, outdated, or incorrect. You can also suggest something we should add.

What could we improve?
Do not include passwords, server IPs, or other private information.0 / 1000