具有高效任意删除的分布式优先级队列?

时间:2013-11-21 04:46:15

标签: redis queue rabbitmq priority-queue eventqueue

我正在考虑使用两个严格的斐波纳契队列 - queue_0queue_1 - 其中queue_0包含日期时间有序事件(key)和queue_1持有删除。

然后我可以简单地运行:

if(queue_0->findMin() == queue_1->findMin())
    queue_0->deleteMin(), queue_1->deleteMin;

这样做是以牺牲辅助存储器的非恒定增加为代价的; insert取O(1),任意“删除”,delete-min取O(lg n)。 [所有最坏情况的复杂性;在最坏的情况下,第二队列的成本不超过第一队列的2倍复杂度;即:相当于Big-Oh]

那么,是否有任何开源分布式优先级队列具有有效的任意删除? - 例如:使用这种简单的方法还是更复杂的方法? - 也许可以与Redis或类似的东西整合?

0 个答案:

没有答案