Add EWMA queue consumer autoscaling simulator#54
Conversation
| @@ -0,0 +1,161 @@ | |||
| # Queue Consumer Scaling Algorithm Spec | |||
|
|
|||
| This document specifies the queue consumer scaling algorithm. | |||
There was a problem hiding this comment.
It seems odd to have the directory called service-ewma but the top heading of this file be Queue Consumer Scaling Algorithm Spec. Perhaps it's worth doing a few things here:
- Change the name of the directory to
consumer-ewmaorqueue-poller-ewma - Add a paragraph to the top of this file explaining that the algorithm described herein examines the number of consumers polling a task queue over a set time window and uses an Exponential Weighted Moving Average (EWMA) formula to recommend adjustments in the number of pollers.
- Add a link or two to background documentation on EWMA.
There was a problem hiding this comment.
Thanks, updated the folder name and the title of the doc (those were working titles). In a follow-up PR I'll update the remaining simulator folders to fit better.
Also added a bit of intro text to cover the high-level.
|
|
||
| ## Non-Goals | ||
|
|
||
| The algorithm intentionally does not use: |
There was a problem hiding this comment.
I understand that Claude put a lot of this together, but it would be good to include an explanation of why the algorithm intentionally does not use these things in its evaluation. For instance, when I read the below list, I immediately asked myself "hold up... why wouldn't we want to take backlog length into account for the no-sync scale-up decision?"
There was a problem hiding this comment.
This is actually unrelated to Claude and more about this being a spec, which I originally started without any reasoning in it. That said, good feedback so added a bit more reasoning :)
Adds a browser-based discrete-event simulator under docs/simulators/workerset-ewma/ that models the EWMA-based worker set scaling algorithm, along with a SPEC.md documenting the algorithm's inputs, state, capacity estimate, no-sync decision, and cadence decision logic.
Adds a browser-based discrete-event simulator under docs/simulators/service-ewma/ that models the EWMA-based queue consumer scaling algorithm, along with a SPEC.md documenting the algorithm's inputs, state, capacity estimate, no-sync decision, and cadence decision logic.
This EWMA algorithm it so far the best candidate for scaling worker set compute providers.