我正在使用 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/