node.js - session 存储有什么用?

标签 node.js session koa

我正在使用 koa 和护照,因此我使用 koa-generic-session处理我的 session 的中间件。

现在不像expressjs session中间件文档中没有像这样的重大免责声明:默认的服务器端 session 存储 MemoryStore 故意不为生产环境设计。

假设 koa-generic-session 的 MemoryStore 已准备好用于生产使用,为什么我要使用重型 session 存储(例如 mysql 或 mongodb)来存储整天来来去去的 session ?使用 MemoryStore 可以给我带来哪些附加功能,而 MemoryStore 却没有?

最佳答案

内存 session 存储非常适合开发,但对于生产使用有一些限制。

  • 重新启动服务器会导致所有 session 失效,这对应用程序的用户来说不太好
  • 内存存储不能有效地处理生产级负载,其中可能同时存在大量 session ,因此更高效的存储优于写入经常使用的磁盘和缓存。数据库可以满足所有这些品质

关于node.js - session 存储有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33280176/

相关文章:

javascript - koa-router 无法与发电机一起使用

javascript - 在 NodeJS session 中看不到原型(prototype)方法

session - heroku 上的 Redis session 存储

javascript - 如何处理查询中的数组值?

java - Spring MVC 更新 ModelAttribute 值

php - Symfony session 数组在 Controller 中工作正常但在 Twig 中不工作

arrays - 如何将 Bluebird Promisification 与生成器 + 并行 Promise 结合使用

node.js - Passport + JWT + Socket.IO 身份验证

javascript - expressjs路由器不工作

javascript - 自动填充 HTML 字段 - 使用 NodeJs 和 mySQL