If this thing is to be used at scale (at public events and so forth), we need to determine how much traffic a single server node can handle. Load testing is in order. I asked twitter and got a few links which I'm just dropping here to start my own discovery:
WebDriver + JMeter load testing using various agents, perhaps via BrowserStack?
websocket-bench custom tests that may be able to plug into other libs, e.g. a monkey test
A fleet of Phantom or Casper agents with pre-programmed scripts (might be much easier for me to use pre-existing knowledge to simulate drags this way) — could definitely be combined with client-side monkey testing
Following that discovery process, we need to safeguard the app against it. Here are the options:
Limit users to a safe number below the threshold uncovered during load tests
Learn how to scale the app :bowtie:
Implement #11
1 is fairly easy but limits bustashape's potential. It's the short-term solution. 2 is a huge question mark that I maybe can do myself but maybe not. But hey, better to know our limits!
I heard from @afragon that he's seen up to sixty people use the app concurrently! That's way more than what I had in mind. This can probably be put on the backburner until we hit another order of magnitude.
If this thing is to be used at scale (at public events and so forth), we need to determine how much traffic a single server node can handle. Load testing is in order. I asked twitter and got a few links which I'm just dropping here to start my own discovery:
Following that discovery process, we need to safeguard the app against it. Here are the options:
1 is fairly easy but limits bustashape's potential. It's the short-term solution. 2 is a huge question mark that I maybe can do myself but maybe not. But hey, better to know our limits!