This has updated for 1.20.4, all of the optimization mods mentioned here are compatible with each other and don't affect vanilla behaviour by default.
Lithium - A mod designed to drastically improve the general performance of Minecraft without breaking things.
VMP - A mod designed to improve general server performance at high playercount.
C2ME - A mod designed to improve the performance of chunk generation, I/O, and loading. This is done by taking advantage of multiple CPU cores in parallel.
Starlight - A mod that rewrites the light engine to fix lighting performance and lighting errors. (Only useful if using C2ME).
FerriteCore - A mod that reduces the memory usage of Minecraft in a few different ways.
Krypton - A mod that optimizes the Minecraft networking stack and entity tracker.
Noisium - A mod that optimises world generation performance. The improvements lie between a 20-30% speedup when generating new chunks.
RecipeCooldown - A mod that prevents excessive crafting recipe request from the client to lag out the server.
MC-249136 Fix - A mod that implements a minimal hacky fix for MC-249136, a significant server lag spike that occurs when locating buried treasure structures for shipwreck loot.
Chunky Pregenerator - A mod which pre-generates chunks, quickly and efficiently.
Spark - A performance profiler mod.
View Distance Fix - A mod that fixes the fog when having a higher render distance on the client than on the server. The server tricks the client into thinking that it has the same render distance as the client.
LibreExpFix - A small mod that fixes experience bug after teleporting across dimensions.
Disable Portal Checks - Disables unnecessary portal checks that causes lag.
Ledger = A logging mod similar to CoreProtect.
Carpet - A mod for vanilla Minecraft that allows you to take full control of what matters from a technical perspective of the game.
Carpet Extra - A mod that adds extra features to the Carpet mod.
sync-chunk-writes=false
max-chained-neighbor-updates=10000
simulation-distance should ideally be 8 if you want all types farms to work as intended, but lowering it will improve performance
Since 1.18 Minecraft requires Java 17 to run. If you don't have Java 17 installed already you can get it from here.
Generate a start-up script for your server here.
If you're using GraalVM you can try out my set of GraalVM start-up flags.
I highly recommend BisectHosting for your server needs. They have 20 server locations, advanced DDoS protection and an user-friendly panel for server management. Use code OBYDUX to get 25% off!
Help: when I launch my server with Fabric 1.16.5 w lithium(0.6.6) & krypton(0.1.2) & ferritecore(2.1.1): ferritecore crashes ! I removed it, and it seems that the launch.sh doesn't have the permission to read/write the params file .?