Optimizing Fabric for Public Server or switching to Paper/Pufferfish?

Hello Reader and Gamer,

I'm reaching out for some advice regarding our Java Minecraft server, which has been running for over 4 years. Here are some details about our current situation:

  • We've used Purpur and Paper throughout our server's history, but recently many players have requested we switch to Fabric due to Paper disabling a lot of redstone and making farming difficult.
  • We just started a new season on 1.21 running Fabric, but we've been struggling to maintain a consistent TPS, often not even reaching 15.
  • Our server consistently hosts over 15 players, though we expect this number to drop to 5-10 in the next six months.
  • We recently upgraded our RAM from 8GB to 12GB, with 9GB allocated to startup.
  • Most of our mods are performance-based and moderation-based, with a few random ones like fsit.
  • We also have a couple of datapacks and custom ones to replace some of the features we had while on Paper/Purpur.
  • We used to have a daily restart enabled but there are no commands to restart or start a server on Fabric. So we've been seeing an issue if the server does stop or crash, then there is a rollback. We've tried kicking all the players before the server stops, but this doesn't seem like a long term solution.
  • Here is our Spark Profiler link: https://spark.lucko.me/M0DxvlWYUu
We're torn between continuing with Fabric and trying to optimize for a stable 20 TPS or reverting to Paper/PurPur/Pufferfish. Fabric has been a significant challenge for our staff team, with a steep learning curve and many new commands and replacements to figure out. We've invested a lot of time into creating the server on Fabric, but we couldn't stress test it until day one, leaving us at a sunk cost fallacy decision point.

Any help or insight from others who have faced similar challenges would be greatly appreciated!

Thank you!
spark is a performance profiler for Minecraft clients, servers, and proxies.
Was this page helpful?