To allow using a different queueing system, like e.g. RabbitMQ, the Queue functionality should be decoupled from the actual queueing implementation. To allow as many queue technologies as possible, the requirements should be as simple as possible. A list of things from my knowledge more or less every queue supports:
Based on the state in this new tag (1.4) you can now inject a Queue object instance into the Manager of your choosing - it just has to extend \Expose\Queue.
To allow using a different queueing system, like e.g. RabbitMQ, the Queue functionality should be decoupled from the actual queueing implementation. To allow as many queue technologies as possible, the requirements should be as simple as possible. A list of things from my knowledge more or less every queue supports: