OpenShift + HAProxy会话太多了

时间:2015-08-18 20:27:10

标签: node.js mongodb openshift haproxy

我正在使用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会话吗?

1 个答案:

答案 0 :(得分:1)

一种解决方法:

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