分布式/集群环境下session处理策略

1. session复制

Session复制是早期企业应用系统使用较多的一直服务器集群session管理机制。应用服务器开启Web容器Session复制功能,在集群中的几台服务器之间同步session对象,使得每台服务器上都保存所有用户的Session信息,这样任何一台机器宕机都不会导致Session数据的丢失,而服务器使用session时,也只需要在本机获取即可。
这里写图片描述

这种方案简单,从本机读取Session信息的速度也很快,但是只能使用集群规模比较小的情况下。当集群规模较大时,集群服务器间需要大量的通信进行session复制,占用大量服务器和网络资源,系统不堪负担。
由于所有的Session信息都在每台服务器上备份,在大量用户访问的情况下,会出现Session不够使用的情况。

2. Session绑定

Session绑定可以利用负载均衡源地址Hash算法实现,负载均衡服务器总是将来源于同一IP的请求分发到同一台服务器上(也可以根据Cookie信息将同一个用户请求总是分发到同一台服务器上,当然这时负载均衡服务器必须工作在HTTP协议层上)
这里写图片描述
session绑定方案不符合对系统高可用的需求,因为服务器宕机以后,session将不复存在。

3.利用Cookie记录Session

每次客户端请求服务器时,将Session放在请求中发送给服务器,服务器处理完成请求后再将修改过的Session 响应给客户端。
这里写图片描述

利用Cookie记录Session也有一些缺点,受Cookie大小的限制,记录有限;每次请求需要传输Cookie,影响性能;用户关闭Cookie,访问将不正常。

4.Session服务器

利用Session服务器(集群)统一管理Session,应用服务器每次读写Session的时,都访问Session服务器。
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值