Connect-mongo 会话 collection 太大

Connect-mongo sessions collection is too big

我正在使用 connect-mongoexpress-sessions 来存储我的应用程序会话。

我现在是 2 天前安装的。今天我查看了我的会话collection,发现里面有超过200,000个文档!我尝试删除我的 collection 并等待 60 秒,那里已经有 200 个文档。

为什么即使我将 resave 设置为 false,文档仍被重新保存?好像文档在无休止地保存...

这是我当前的配置:

app.use(session({
    secret: config.secret,
    resave: false,
    saveUninitialized: false,
    unset: 'destroy',
    store: new MongoStore({
        mongooseConnection: mongoose.connection,
        touchAfter: 3600, //Restore once every hour
        autoRemove: 'interval',
        autoRemoveInterval: 60 //Remove after one hour
    })
}));

目前最多只有大约 3 个用户在使用我的应用程序。

所以它有两个问题,一个是你的会话太多,另一个是你的会话没有被删除

可能是您的客户发出的请求没有在 cookie 中保存 sessionId。因此,对于每个请求,它都会创建一个新文档。

同时检查您是否在 mongodb 数据库中定义了 TTL 索引。