Express会话MongoDB存储:connect-mongo vs connect-mongodb-session

Ren*_*rop 8 mongodb node.js express mean-stack express-session

到现在为止(10.7.2016),express-session的github-page建议了两个mongodb会话商店:

  1. connect-mongo | 基于MongoDB的会话存储 - Github(775星)
  2. connect-mongodb-session | 由MongoDB构建和维护的基于MongoDB的轻量级会话存储 - Github(6星)

我应该选择哪一个,两者之间有什么区别?通过流行显然connect-mongo获胜,但它真的是"更好"的产品吗?为什么MongoDB本身很难用现有的解决方案编程connect-mongodb-session

任何建议都适用.

PS:我注意到有几个(过时的)SO问题比较了存储的不同MongoDB支持的会话,但是(据我注意到)非比较这些推荐的两个.

Dav*_*arb 13

Connect-mongo已经存在了很长时间,而connect-mongodb-session被设计为更容易使用,更加自以为是.Connect-mongo有更多选项可供调整.

这两个库的维护者在https://github.com/mongodb-js/connect-mongodb-session/issues/15上对它们的差异进行了很好的讨论.tl; dr是两个都很稳定.唯一的主要设计差异是connect-mongodb-session不相信会话查询应该与db的其他客户端共享连接池,而connect-mongo认为它们应该.两位维护者都提出了很好的论据

尽管它们具有明显的稳定性,但它们的提交数量都令人惊讶.仔细观察可以看出,connect-mongodb-session的大多数提交都是一场持续的竞赛,以确保依赖关系指向最新版本的驱动程序.