我正在使用Kraken.js开发一个应用程序并管理我决定使用的会话:connect-mongo。
我有这样的设置:
'use strict';
var session = require('express-session');
var MongoStore = require('connect-mongo')(session);
module.exports = function SessionLib(opts) {
return session({
secret: opts.secret,
resave: opts.resave,
saveUninitialized: opts.saveUninitialized,
store: new MongoStore({
url: opts.url,
ttl: opts.ttl
})
});
};
我在OpenShift中使用自动缩放选项部署应用程序,OpenShift正在使用HAProxy进行自动缩放,但这导致我在MongoDB中产生过多会话(上周末大约250,000)。
有可能不保留HAProxy会话吗?
答案 0 :(得分:1)
一种解决方法:
为什么不在数据库中为这些会话文档添加TTL索引?您可以在TTL文档应该标记一个字段的位置添加此类索引,因此在TTL过期后,将删除集合中具有该字段的每个文档