mongodb-queue: message queue using MongoDB
A simple messaging queue using MongoDB. This trades having a good queue for ease of deployment. This is designed to be much worse at scale than real queueing infrastructure. However, it is very simple to start using if you are already running MongoDB. You could probably fork this code to make it work with a different database that you are already using.
There are 2 options for receiving a message: polling or tailable cursors. Polling is obviously inefficient, but it works against an index on a capped collection, so it should still be fairly efficient, and as fast as the polling interval you set. Tailable cursors respond very quickly and don't re-query the database. However, there is an outstanding bug that they use up CPU on the database when the system is idle, particularly as more tailable cursors are added. The idle CPU usage will become worse as you scale out to multiple worker processes.
|Versions [RSS]||0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.1, 0.2.2, 0.2.2.1, 0.2.3.0, 0.2.3.1, 0.2.4, 0.2.5, 0.2.5.1, 0.2.5.2, 0.2.5.3, 0.3, 0.4, 0.4.0.1 (info)|
|Dependencies||base (>4.5 && <5), data-default, lifted-base, monad-control, mongoDB (>=220.127.116.11 && <1.5), network, text, transformers [details]|
|Copyright||Daggerboard Inc. makers of docmunch.com|
|Author||Daggerboard Inc. Greg Weber|
|Maintainer||Greg Weber <email@example.com>|
|Source repo||head: git clone git://github.com/docmunch/haskell-mongodb-queue.git|
|Uploaded||by GregWeber at 2014-01-22T23:12:37Z|
|Downloads||11093 total (76 in the last 30 days)|
|Rating||(no votes yet) [estimated by Bayesian average]|
|Status||Docs available [build log]
Successful builds reported [all 1 reports]