如何在 MongoDB 中排队?

How can I make a queue in MongoDB?

上下文:

在我的应用程序中,我存储用户活动和通知,类似于 instagram 的功能。 (当有人喜欢你的 post 时,当有新评论或你关注的人 post 发布了新内容时)。

为每个用户存储所有这些活动会非常space。 例如,如果某人拥有 3k 关注者 posted;将 3,000 条新记录添加到数据库中。

问题:

要保存 space 我想在集合中最多存储 20 条记录 (Activity)。

插入新记录时;如果集合大小为 20,最旧的记录(索引 0)应该像队列一样被删除。意味着只存储 20 个最新的活动。

有什么简单的方法可以用 mongoose 实现这个目标吗?

谢谢。

您可以使用一种叫做“Capped Collections”的东西: