是否有一个很好的C#驱动程序的开源MongoDB队列实现

时间:2012-09-04 18:41:46

标签: mongodb message-queue mongodb-.net-driver

并不是说写一个不够容易(或有趣),因此不要重新发明轮子是有意义的。我已经浏览了各种尝试,但我似乎还没有遇到支持这些标准的实现;

具有MongoDB持久性的简单队列OSS系统;

  • 基于C#Driver(官方)(如此完整的POCO序列化)
  • Tailable游标而不是轮询
  • 处理邮件超时(GC正确)
  • 处理消费者失败(理想情况下崩溃检测重新插入,但延迟重新插入的超时很好)所以findAndModify完成
  • 多个作家,多个消费者
  • 线程

很高兴;

  • 允许(仅限最新)消息(替换Q中的旧消息)

如果有人有一个很好的简单的库,就像我在GitHub上漂浮的那些我尚未找到的库,请大声说出来!

1 个答案:

答案 0 :(得分:0)

这是我的小项目 - 一个.net消息总线实现,适用于MS SQL队列或MongoDB(MongoDB支持是最近添加的)。链接:http://code.google.com/p/nginn-messagebus/http://nginn.org/blog以获取一些示例。 我不确定这是否是您正在寻找的,它也缺乏文档和示例部门,它不完全符合您的规格(轮询而不是拖尾) - 但也许值得尝试一下。这是一个发布 - 订阅消息总线,如NServiceBus或MassTransit - 不是原始消息队列。

PS我担心你的规范中有相互排斥的要求:你不能对并发消费者使用tailable游标,因为你失去了原子性。如果你想要排队一个队列,你应该只使用一个消费者。