superfly / fly-autoscaler

A metrics-based autoscaler for Fly.io
Apache License 2.0
28 stars 4 forks source link

Downscaling #13

Closed benbjohnson closed 8 months ago

benbjohnson commented 8 months ago

Currently, the autoscaler only scales up and relies on the target application shutting down when it doesn't have work to perform. This works when there is low job parallelism within a single worker (e.g. a worker can handle 1 or 2 jobs at a time) but doesn't work well as it scales (e.g. a worker can handle tens of jobs at a time).

The reconciler should probably accept a min_machine_count and a max_machine_count expression instead of just the max (via expr).