How well does Unity scale on massive hardware? Could you host 10.000.000 gameobjects if given a hardware in range of several tens terabytes of RAM and thousands of physical CPU cores? Is there any limitation for scaling? What should be kept in mind when building hardware to host a server version of a video game? We’re talking about headless server, so no rendering is happening server-side.
Can Unity handle more than a single CPU or more than a single motherboard?
Right now server can handle odd 5000 gameobjects, on a very serious rig probably 30000, but can it be increased to very insane sizes on a hybrid datacenter level system?
You’d have to cluster servers, not have everything on 1 machine. You’d want load balancers/client servers for ingress that point clients to the right server instances.
The engine is single threaded, you can do work on other threads but the main game loop only runs on 1 core, short of doing everything with DOTS.
Darkrift is much more bare bones than most of the other networking options but it is for scale and performance, he has a demo running on consul for cluster orchestration. Unity has a chart showing it has less features but the highest performance/scalability: How to choose the right netcode for your game
It is a very very advanced topic, well outside the scope of Unity. Even World of Warcraft shards their servers so not everyone is in the same instance, if you’re in a city in WoW they are only showing you some of the people in the city, you may be trying to meet up with a friend in the same city and you can’t see each other because you’re in different instances, once you add each other to a party it’ll move you to the same instance, but they aren’t hosting everyone on 1 server.