分布式系统session共享问题
来源:互联网 发布:cad of mac中文破解版 编辑:程序博客网 时间:2024/05/19 03:44
现在我们的服务器很多都是同一个服务部署多个,或者部署在不同服务器上面,架设成集群,实现负载均衡。那么问题来了。当同一个用户登入后,再次访问可能分发到不同的服务,这样我们就取不到之前登入session,出现未登入现象。所以我们必须解决共享session问题。
方式一:
存储在数据库中, 用户登入时,把session信息储存在数据库中,然后再需要获取session的地方进行读取。
优点:开发简单
缺点 :依赖性太强,业务量大的时候数据库压力大,数据库出现问题影响整个系统。
方式二 :
cookie共享session ;当用户登入时,把 cookie储存在客户端,当用户需要session判断是否登入时,首先判断本服务器是否有session,如果没有同步cookie信息。(购物车在数据库和cookie都存,就是为了把用户未登入时产生的购物车同步到登入用户上)
优点:用起来方便,开发效率高
缺点 : cookie安全性不高,容易伪造,当客户端禁用时则该方法失效
方式三 ;
服务器共享session ,使用一台作为用户的登录服务器,当用户登录成功之后,会将session写到当前服务器上,我们通过脚本或者守护进程将session同步到其他服务器上,这时当用户跳转到其他服务器,session一致,也就不用再次登录。
优点:安全 ,一次配置永久使用
缺点 ; 同步效率低,慢 ,有时出现没同步现象
方式四 :通过缓存同步session,用户登入时,把登入信息放在redis或者memcache中,我们取session信息的时候都从缓存中取。(重写session创建 获取 销毁 方法 创建存缓存中 获取从缓存中获取 销毁缓存中记录和服务器记录)
优点: 比前几种方式效率高 读取速度快 安全
缺点 :重写底层方法复杂 ,开发慢
- 分布式系统session共享问题
- 分布式系统的session共享问题
- Spring Session+Spring Data Redis 解决分布式系统架构中 Session 共享问题
- session理论以及解决分布式系统下的session共享问题
- session分布式共享
- 分布式session共享
- 分布式应用共享session
- 分布式session共享
- 分布式Session共享方案
- 分布式Tomcat session共享
- shiro分布式session共享
- 分布式Session共享解决方案
- 在分布式环境中如何解决session共享问题
- 分布式系统开发常见问题-1. session的复制与共享 2. 分布式缓存的设计
- 分布式系统开发常见问题-1. session的复制与共享 2. 分布式缓存的设计
- 分布式系统开发常见问题-1. session的复制与共享 2. 分布式缓存的设计
- 分布式 php实现session共享
- 分布式如何实现session共享
- 云计算极限班课程大纲
- HTML+CSS底部footer两种固定方式
- 利用Mesosphere DC/OS在任意基础设施之上实现TensorFlow分布
- vue中computed 和 watch的异同
- java中的自动拆箱与自动装箱
- 分布式系统session共享问题
- 3.0项目创建
- android中Webview设置多个cookie参数
- com.alibaba.dubbo.remoting.RemotingException问题处理方案。
- 编写一个程序,实现设置上月、本月电表读数,显示上月、本月电表读数,计算并显示本月用电数。假设每度电的价格为1.2元,计算并显示本月电费。
- Socket网络通信(二)
- AIDL进程间通信
- 自定义浏览器滚动条样式
- spring Boot 生成图片验证码 存入redis