2026-10-24 16:23:54
session
客户端:sessionId 存储在客户端。在前后端不分离的项目中,通常通过浏览器的 cookie 来存储 sessionId;在前后端分离的项目中,如移动应用,sessionId 可能存储在本地数据库(如 sqlite)中。
服务端:sessionId 也存储在服务端,可以是内存中(不可持久化),也可以是持久化存储方案,如 redis 数据库。
cookie
token
redis
session 存储:redis 可以作为 session 的持久化存储方案,将 sessionId 和对应的 session 数据存储在 redis 中,以提高性能和可扩展性。
token 存储:在 token+redis 方案中,redis 用于存储 token,以便在客户端请求时验证 token 的有效性。这种方案允许服务器在需要时清除 redis 中的 token,从而实现对指定用户的注销下线操作。
token+session+redis 方案:在这个方案中,redis 存储的是包含 token 的 session 数据。这样,一个 session 可以存储多个 token,支持同一个账户在多设备端共用一个会话。
总结: