As discussed in this issue comment #1664 (comment)
Problem
ate.workerpool.workers counts workers. A worker can now hold more than one actor, so a count of workers cannot show how full a pool is. A worker with 1 of 20 slots used and a worker with 19 of 20 are both partial (#1799).
The scheduler picks a random worker from the workers that have room. With more than one slot on each worker, the actors spread across the pool. At low load, most workers are partial, and at_capacity stays near 0. Under more load, at_capacity jumps suddenly. Neither state gives a good signal for an autoscaler.
No instrument reports the number of actors in operation. The count of assigned workers was a substitute for it, and that substitute is gone (#1664).
For discussion of HPA, follow this discussion in slack
As discussed in this issue comment #1664 (comment)
Problem
ate.workerpool.workerscounts workers. A worker can now hold more than one actor, so a count of workers cannot show how full a pool is. A worker with 1 of 20 slots used and a worker with 19 of 20 are bothpartial(#1799).The scheduler picks a random worker from the workers that have room. With more than one slot on each worker, the actors spread across the pool. At low load, most workers are
partial, andat_capacitystays near 0. Under more load,at_capacityjumps suddenly. Neither state gives a good signal for an autoscaler.No instrument reports the number of actors in operation. The count of
assignedworkers was a substitute for it, and that substitute is gone (#1664).For discussion of HPA, follow this discussion in slack