I am building a render farm using SQS and autoscaling group(s).
I believe my use-case is one of the few where I actually want my group's capacity to match the size of the queue, up to a limit.
Right now, I'm using a target tracking policy that scales based on "BacklogPerInstance", which is just queue_size/group_capacity.
The problem with this approach is that in my case, I want BacklogPerInstance to be 0, which is an invalid target for the scaling policy. I have hacked it by using a target of 0.001, but it's not working very well.
How do I write an autoscaling policy that keeps the group's capacity at the size of the queue?