PHP message queue using MongoDB as a backend. Adheres to the 1.0.0 specification.
##Features
- Message selection and/or count via MongoDB query
- Distributes across machines via MongoDB
- Multi language support through the specification
- Message priority
- Delayed messages
- Running message timeout and redeliver
- Atomic acknowledge and send together
- Easy index creation based only on payload
##Simplest use
use DominionEnterprises\Mongo\Queue;
$queue = new Queue('mongodb://localhost', 'queues', 'queue');
$queue->send(array());
$message = $queue->get(array(), 60);
$queue->ack($message);
##Composer
To add the library as a local, per-project dependency use Composer! Simply add a dependency on
dominionenterprises/mongo-queue-php
to your project's composer.json
file such as:
{
"require": {
"dominionenterprises/mongo-queue-php": "1.*"
}
}
##Documentation
Found in the source itself, take a look!
##Contact
Developers may be contacted at:
##Contributing
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! The build requires a running mongo. The URI to mongo can be specified via an environment variable or left to its default (localhost on the default port, 27017):
TESTING_MONGO_URL=mongodb://127.0.0.1:27017 ./build.php
There is also a docker-based fig configuration that will standup a docker container for the database, execute the build inside a docker container, and then terminate everything. This is an easy way to build the application:
fig run build