使用redis实现共享session

什么是共享session

多个应用实例共同保持的用户的状态,例如登录状态

为什么要实现共享session

分布式应用需要用户在某一点登录,记录用户登录状态在其他应用实例中也能获取到已经登录的状态

实现流程

用户登录

1.用户登录时,生成一个全局唯一uuid,
2.将uuid:用户信息以key:value形式存到redis中,这里边采用将对象序列化后村放入redis的操作进行
3.将生成的token(uuid)存放到cookie中

用户访问

1.使用token从redis中获取用户状态信息,以标识用户是否成功访问

代码实现

https://gitee.com/potatobeancox/potato-seckill/blob/master/src/main/java/com/potato/seckill/controller/LoginController.java
中login流程,查com.potato.seckill.service.SeckillUserService#getByToken调用栈

猜你喜欢

转载自blog.csdn.net/potatobeancox55555/article/details/80588619
今日推荐