Please check http://gerrit.ovirt.org/#/c/19744/ for a possible solution.
Roy - the reject policy is run in your own thread, but only after queue is exhausted. I think we should test it under load, but problematic ordering will not be worse than it is today.

Looking at previous comments there are two solutions:
1. Configurable number of threads and queue size. Solution proposed above.
2. Make IVdsServer implementation async.
As the first one seems to be ongoing I would like to suggest solution for second one. There is work in progress to have AMQP communication which will introduce async communication. This change can be implemented to provide async behavior for AMQP and http VdsServers.