分布式中,session存储问题

在分布式系统中,处理用户登录session共享有三种常见方案。第一种是将session存储在客户端cookie中,但存在安全风险。第二种是服务器间session复制,可能导致资源浪费。第三种是利用nosql数据库作为session缓存,提高访问速度并减轻CPU和IO压力。这种方案更优,减少了服务器负担并增强了安全性。
摘要由CSDN通过智能技术生成

在分布式中,客户端请求会经过负载均衡进行转发,会把请求分配到服务器上,用户登录时,会有一个用户信息,通常把这个用户登录信息存储到session中,这时,会产生一个问题,怎么实现session共享,可以有三种解决方案:

1.把session存到客户端中,也就是cookie中,每次用户请求就会携带cookie。(这种方案有缺陷,就是cookie存在安全隐患问题)

2.实现session复制,用户登录之后,每台服务器把session信息进行复制。(这种会出现资源浪费的问题)

3.用nosql数据库存储,将nosql作为缓存数据库去存储session,用户登录之后将信息存到nosql数据库中,下次用户在登录的之后,先查询数据库是否存在该用户信息的session,存在就直接登录;不存在,就保存到nosql数据库中。

采取方案三有两个好处:1.减少CPU的压力(直接是在内存中读出);  2.减少io读的压力(提高访问速度,减少io的读操作)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值