The logic has to be in the consumers code
Start off with a prefetch count of 50 , every time the consumer reads off a number of message deduct the amount from the prefetch count for the next batch of messages
The 50 number will be up to what your expect volumes are.
I read in v3.8 there is a standby consumer function which might be worth having a look at.....
Also I dont see what the issue is with having a busy consumer you would have to clarify exactly what you mean by that statement
Also detail what version of rabbitMQ you are using.