This package is abandoned and no longer maintained. The author suggests using the traderinteractive/mongo-queue package instead.

Message queue using MongoDB as a backend

v3.0.0-alpha1 2018-03-07 15:26 UTC


Build Status Scrutinizer Code Quality Coverage Status

Latest Stable Version Latest Unstable Version License

Total Downloads Daily Downloads Monthly Downloads

PHP message queue using MongoDB as a backend.


  • Message selection and/or count via MongoDB query
  • Distributes across machines via MongoDB
  • Message priority
  • Delayed messages
  • Running message timeout and redeliver
  • Atomic acknowledge and send together
  • Easy index creation based only on payload

Simplest use

use TraderInteractive\Mongo\Queue;

$queue = new Queue('mongodb://localhost', 'queues', 'queue');
$queue->send(new Message());
$messages = $queue->get([], ['runningResetDuration' => 60]);
foreach ($messages as $message) {
    // Do something with message



To add the library as a local, per-project dependency use Composer! Simply add a dependency on traderinteractive/mongo-queue to your project's composer.json file such as:

composer require traderinteractive/mongo-queue


Found in the source itself, take a look!


Developers may be contacted at:


If you would like to contribute, please use our build process for any changes and after the build passes, send us a pull request on github!


There is also a docker-based fig configuration that will execute the build inside a docker container. This is an easy way to build the application:

fig run build