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遊標嗎? –