Plan icon indicating copy to clipboard operation
Plan copied to clipboard

Clustering servers into gamemodes

Open rxdn opened this issue 5 years ago • 4 comments

Is your feature request related to a problem? Please describe.

Not really. It is more of a new feature.

I would like to be able to..

I operate a minigame network, in which identical servers are dynamically spun up. I would like to be able to track the popularity of each gamemode.

I first tried setting the ServerName of the 3 game servers for one of my gamemodes to the same string, however, this lead to 3 different servers appearing on the web UI, with the same name. Next I tried setting the server UUIDs to the same value (in ServerInfoFile.yml). This yielded some better results, as the servers are displayed as one, however the statistics don't work properly: Screenshot

One server reports it's player count as 7, whilst the rest have no players on at all, leading to this spiked graph, as Plan thinks that it's the same server reporting the statistic.

A possible solution would be to have a "ServerType" field in the config, which then can be used in the web UI to group together servers with to view statistics simultaneously, i.e. on a players graph, it would ideally show the amount of players across all servers of a certain ServerType summed together.

rxdn avatar Feb 21 '20 15:02 rxdn

The idea of 'Server groups' has come up before and is definitely something that would be beneficial to networks (especially minigame networks).

The complexity increases a lot when the data is queried by server groups instead of servers, which is why this has not been done yet. - but I think the only visible issue with multiple servers having same UUID is that the players online/performance graphs get messed up.

If the issue in the screenshot is resolved then servers could appear as a cluster, as only time-series data is heavily affected by multiple servers sharing the same uuid

AuroraLS3 avatar Feb 21 '20 20:02 AuroraLS3

+1 for this, we use Docker containers with preservers

ThEWiZ76 avatar Jun 29 '20 15:06 ThEWiZ76

Possible way to do this is to change any query with WHERE server_(uu)id=? to WHERE server_id IN (?, ?, ...)

AuroraLS3 avatar Nov 22 '22 11:11 AuroraLS3

+1

Panda260 avatar Mar 31 '23 11:03 Panda260