ExpressJS中的最佳会话存储 - NodeJS

时间:2013-07-16 21:59:44

标签: javascript node.js mongodb express redis

我正在构建我的第一个(而且相当大的)NodeJS应用程序。我需要出色的性能,因为它是一个很大的AJAX(AngularJS)接口,很多用户提出了很多请求。

我正在构建登录系统,我需要选择我将使用的存储引擎。我将搜索范围缩小到4种选择:

  • connect-mongo:阅读很多关于它的好东西,但需要安装MongoDB
  • connect-redis:阅读很多关于它的好东西,但需要安装Redis
  • connect-pg:不知道性能,但这是我们正在使用的数据库,因此无需额外安装
  • cookieSession:根据this post非常快,但我有点困惑为什么它如此之快以及我看起来似乎忽略了这个选项的所有地方

哪种设置可以为我提供最佳性能?当然没有影响功能。

谢谢!

2 个答案:

答案 0 :(得分:5)

通过关注链接并查看星星和叉子的数量,可以清楚地找到正确的答案。 cookieSession是不可接受的,因为它不能在多台机器上运行,这是您绝对需要的。 connect-mongo没有任何意义,因为不值得为cookie安装和维护mongo。

connect-pg对你来说可能没什么问题,但是为什么在没有必要的时候冒着降低数据库速度的风险。 Redis是一款令人难以置信的,易于安装,备受推崇的软件。它是免费的,普遍适用。它也是Github上最受欢迎的选项。使用connect-redis。

答案 1 :(得分:1)

这个问题一直在大数据世界中被问到,并且对于每个问题的优点存在很多偏见。我推荐使用你最熟悉的那个。

话虽如此,我更喜欢带有Node的Mongo,因为从JS对象转换到MongoDB行和返回它都很容易。