Minecraft optimization
Paper, tick rates, and when to stop tuning
Practical notes on JVM flags, chunk loading, and why the last 1% of optimization often is not worth it.
Running a public Paper server is mostly about removing surprises: chunk loads during peak, entity stacks nobody asked for, and plugins that wake up every tick for no reason.
Start with observability
Before touching flags, grab a Spark profile during your worst hour. If the top frames are chunk generation, no amount of -XX:+UseStringDeduplication will save you. You need pregen, view distance discipline, or hardware headroom.
View distance is a budget
Every +1 in simulation distance multiplies work in ways players do not see on the tab list. Treat it like a monthly bill: pay only for what your gameplay actually uses.
Plugins and sleep
Audit repeating tasks. If a plugin scans every player every second, that is a tax on your TPS you will feel when twenty people log in at once.
We ship hosts tuned for game workloads, but good ops still beat magic silicon. Start with measurement, then buy RAM when the graph says so, not when the chat says "lag".