使用MongoDB进行消息传递的注意事项是什么?

时间:2013-02-14 16:45:51

标签: mongodb message-queue message-passing

MongoDB可用于实时消息传递,方法是使用tailable游标来拖尾上限。

为此目的使用MongoDB有什么注意事项?一个显而易见的问题是没有内存中的集合,因此当不需要持久性时,可以将消息写入磁盘。

1 个答案:

答案 0 :(得分:1)

有一点需要注意,如果你有一个副本集,只有一台Mongo机器可以接受写入。这将限制您可以为队列执行的写入次数。

另一个明显的警告是,使用上限集合,您显然必须在消息开始退出集合之前阅读/使用消息。如果消费者失败了 - 你没有足够快地抓住它 - 你就会失去信息。

我对你的最后一句感到困惑。 =(我相信你知道Mongo会尽力把所有内容保存在RAM中。http://docs.mongodb.org/manual/core/capped-collections/他们没有提到加盖的集合不会在RAM中(除非你的工作集太大而不能用于RAM)。