RabbitMQ - parallel task consuming
You should check the part about Fair dispatch in the Rabbit MQ tutorials.
It shows you how to use $channel->basic_qos(null, 1, null);
to handle only one job at a time. So you have a fair distribution of the messages.