OpenShift + HAProxy会话太多

我正在开发一个使用Kraken.js的应用程序,并pipe理我决定使用的会话: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中产生了太多会话的错误(上个周末约有25万个)。

有没有保持HAProxy会话的可能性?

一种解决方法:

为什么不在你的数据库中为这些会话文档添加一个TTL索引? 您可以在标记TTL文档应该具有的一个字段的地方添加这样的索引,因此在集合中具有该字段的每个文档将在TTL过期后被删除