4 ms·
For some things there is simply no way to parallelise events when things need to be processed in order, and the limitation is simply the processing capacity. In
by Thorentis 5y ago
For some things there is simply no way to parallelise events when things need to be processed in order, and the limitation is simply the processing capacity. In this instance I'm surprised Lichess didn't have surge capacity to automatically scale up for a big tournament like this. Sure, it might be expensive, but that's when optimisation should come in (to save costs). Having to cancel a major event like this due to poor optimisation is a deployment failure moreso than a coding failure.
- nijave 5y agoYou're basically talking mainframes looking at vertically scaling for high throughput on something serial
- weird-eye-issue 5y agoIt's not going to go faster if you add more workers to a queue that has to be processed one by one
- Thorentis 5y agoIt's not just a case of adding more workers, but adding more processing power and removing bottlenecks so that each event can leave the queue faster.
- weird-eye-issue 5y agoI doubt it's as simple as adding processing power. That only helps in a linear fashion and it sounds like it was a bigger problem. Probably was IO bound. Also removing bottlenecks is not related to surge capacity but rather code level optimizations that they didn't realize were needed until this happened so it's easy to say that after the fact...