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

Performance/scaling recommendations for RootTheBox server #595

Open
pluto00987 opened this issue Oct 27, 2023 · 2 comments
Open

Performance/scaling recommendations for RootTheBox server #595

pluto00987 opened this issue Oct 27, 2023 · 2 comments
Labels

Comments

@pluto00987
Copy link
Contributor

I'm looking for some general guidance and/or recommendations on how to scale a RtB server. Or, how well it scales in general with larger hardware. I have seen Issue #177 from and realize I'm kind of asking the same loaded question, but any updated or more specific suggestions beyond that are appreciated. That answer is ~5 years old :)

For context, we've been using the provided docker setup to run some smaller events (around 15 people) and it has worked great so far on 2 vCPU and 2GiB RAM. We're currently discussing the possibility of running an event at a conference where there would be around 300-400 participants and want to ensure we build a server that can handle that.

So far I've assumed or seen suggestions to:

  • Use a bigger box
  • Replace python with pypy
  • Replace sqlite with a 'real' db, mysql or perhaps percona
  • Have the db on a separate instance from the web app

I would appreciate any comments on how beneficial any of the above would or wouldn't be, either separate or together. I'd also love to hear from anyone who has tried any of those and their experience or thoughts on the matter. Or anyone that's run some larger events and their experience there.

Thanks much!

@eljeffeg
Copy link
Collaborator

@PJNorrisS1 @PunitTailor55 @garanews Any suggestions for @pluto00987

@PJNorrisS1
Copy link
Contributor

That's a lot of players! DB for sure separate and don't consider using sqlite for that many players. Also we find the scoreboard websocket intensive so we now only enable the scoreboard for Admins only, which dramatically will reduce the load on the box.

We still keep it in a docker container. We run between 20-40 players, but the key difference here is that we may have 10 games or so running globally at the same time - so we beefed up our resources. They are all separate RTB docker containers on the same box with some internal coded platform we manage everything from.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants