分布式session

pmsa
1299
2021-07-16

session原理

session存储在服务端,jsessionId存在客户端,每次通过jsessionid取出保存的数据

问题:但是正常情况下session不可跨域,它有自己的作用范围image.png

这个session被sessionManager管理着

image.png

分布式session解决方案

session要能在不同服务和同服务的集群的共享

1,存储到客户端

直接把信息存储到cookie中
缺点:

  • 数据存储在客户端,存在安全隐患
  • cookie存储大小,类型存在限制
  • 数据存储在cookie中,如果一次请求cookie过大,会给网络增大开销

2,session复制

用户登录后得到session后,服务把session也复制到别的机器上,显然这种处理很不好

image.png

3,hash一致性

根据用户,到指定的机器上登录。但是远程调用还是不好解决

image.png

4,redis统一存储

把session放到redsis中
image.png

动物装饰