1
我不知道是否有可能创建一个与MongoDB和红宝石(mongoid)的FIFO队列。MongoDB FIFO与红宝石队列
我想使用加盖的集合,但我看不到如何弹出我的队列。 collection似乎没有办法做到这一点。
我在做什么现在的问题是:
$fifo = Mongo::Connection.new.db("fifo")
queue = "#{queue_name}_#{queue_type}"
unless $fifo[queue].find.present?
$fifo.command(create: queue, capped: true, size: 10000000, max: 1000)
end
$fifo[queue].insert(url: "http://www.example.com/unique001")
$fifo[queue].insert(url: "http://www.example.com/unique002")
$fifo[queue].insert(url: "http://www.example.com/unique003")
,给了我一个加盖收集,看起来像(从控制台)
> db.test001_high.find()
{ "_id" : ObjectId("503c4714236f440e9c000001"), "url" : "http://www.example.com/unique001" }
{ "_id" : ObjectId("503c4714236f440e9c000002"), "url" : "http://www.example.com/unique002" }
{ "_id" : ObjectId("503c4714236f440e9c000003"), "url" : "http://www.example.com/unique003" }
我奇怪的是,有没有红宝石的方式在这个集合上有一个阻塞弹出窗口?我必须说我对mongodb不是很熟悉,我只是想创建一个像redis中的fifo队列。所以也许我以错误的方式来解决这个问题。
你看过tailable游标吗? –