3 ms·
How are you doing the throttling? I imagine one malicious player might do like 10000 iops to your DB.
by daymanstep 1y ago
How are you doing the throttling? I imagine one malicious player might do like 10000 iops to your DB.
- andersmurphy 1y agoSo there's no rate limiting. But because it's sqlite it's a single writer. Everything gets batched as one transaction every 100ms. The operations on a single chunk gets squashed into a single write. Even without the squashing sqlite can handle 10000-20000+ updates/s because of the transaction batching. With the chunk based squashing all edits to a chunk in that 100ms window become one update, so it can scale quite well.
- matsemann 1y agoBut the question wasn't really if you can handle it, but more if someone could control the whole board themselves, I think?
- andersmurphy 1y agoOh, I mean they could try. It's a very big board. Probably possible though if someone is sufficiently motivated.
- matsemann 1y agoI see a snake eating the 0,0 part now at least, heh. Btw, if I add a ' to the string, it's impossible to override by othrs. At least in the UI on Firefox, the snake still ate it.