Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add multiserver support with coordinator #17

Open
ivancea opened this issue Jul 20, 2024 · 0 comments
Open

Add multiserver support with coordinator #17

ivancea opened this issue Jul 20, 2024 · 0 comments
Labels
:infrastructure Related with the server deployments and balancing !private Issue to be done only by collaborators :server Related with the server (Express, SocketIO, connectivity...)

Comments

@ivancea
Copy link
Owner

ivancea commented Jul 20, 2024

When a server is full (#15), users should be balanced to other servers.

Furthermore, if an user wants to join a specific room (#13), they should try to connect to the server that has that room.

This has many implications:

  • Room IDs should be shared between servers in the cluster
  • A coordinator node should decide where the user goes, before asking the server itself, to avoid DoS to a single room

Maybe just a coordinator that asks via HTTP if the servers are full, and let the user choose a server? So users would select a server on joining. Servers would discard connections if they are already full.

Or just make it automatic, by having the servers have an endpoint answering with the room ids, rooms limits, and server limit

@ivancea ivancea added :server Related with the server (Express, SocketIO, connectivity...) :infrastructure Related with the server deployments and balancing !not-ready Issue not ready to be publicly worked on !private Issue to be done only by collaborators and removed !not-ready Issue not ready to be publicly worked on labels Jul 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:infrastructure Related with the server deployments and balancing !private Issue to be done only by collaborators :server Related with the server (Express, SocketIO, connectivity...)
Projects
None yet
Development

No branches or pull requests

1 participant