My son and I play a lot of modded Minecraft. We got super annoyed with hosting servers and getting mods to stay synchronized, where even a single update on the server but forgotten on the client can result in shenanigans.
So, we worked together (he’s 12) to build modrent. Users pay for their own play time (myself funding a neighborhood of players from 17-10 is gone—but I can sponsor playtime if I want to). On the hosting side, a world starts with 8 cores and 12 gb of ram running zGC. A controller then adjusts memory pressure and cpu allocations to find the optimal configuration for the server by monitoring world metrics and detecting chunk generation, etc.
Once the world allocations is less than the cost of the players currently in the world, it starts rewarding free time to the players to reduce the actual cost per player. For example, a world that costs me 0.02 per hour with two players paying 0.02 per hour, I’d reward 30 minutes to each player so they effectively paid 0.01 per hour.
Just thought I’d share it here to discuss the tech.