MongoDB 的生存时间指数如何运作?

How does MongoDB's time to live index work?

当 MongoDB 使用 TTL 索引时,它是否只对所有标记为删除的文档调用 .remove()?如果是,是否意味着我的 .pre('remove') 中间件每次仍会被调用?

基于TTL index的过期文档删除发生在MongoDB服务器内,因此不会调用Mongoose中间件。

无法在文档过期和删除时收到通知。如果您需要该功能,那么您应该实现自己的文档过期而不是使用 TTL 索引。