首页 资讯 > 内容页

一文读懂Session共享 全球快资讯

来源:哔哩哔哩 发布日期: 2023-06-26 23:06:06


(资料图片)

在 一文读懂Cookie与Session 中我们介绍了Cookie与Session,这篇文章将继续这个话题,讲述Cookie与Session的实际应用场景。

基于Cookie与Session的登录认证

这是上一篇文章的登录模型,它在单机系统中,表现的很好很强大。但是在分布式系统中却不适用,如下图,有3台Tomcat,你在tomcat1登录了一次,但是你去tomcat2去访问的时候,因为session只存在tomcat1中,所以你又得去登录一遍,累死。

那么有没有好的解决方案呢,有的,那就是Session共享

Session共享

复制

比较经典的就是tomcat集群的session复制机制。用户浏览器访问后,负载均衡器定位到了Tomcat1,如果发现Tomcat1没有session,就会创建一个session,作为主备份(primary copy)。同时广播给其他Tomcat服务器,让它们生成tomcat1的session的拷贝(backup copy)。

第二次用户浏览器访问,如果Tomcat1挂了,负载均衡器分配到比如Tomcat2上,就会有以下两种情况:

没有session拷贝,它会向其他Tomcat机器询问是否有session拷贝,有的话,借给她一份。Tomcat2借到session拷贝后,作为主备份,然后再广播给其他的机器。

有session拷贝,升级为主拷贝,然后广播给其他机器

集中存储

这种情况下,就是完全把Session托管给外部环境,比如redis缓存,数据库等,来进行统一存储。所有的服务器统一从一个地方读取。

关键词:

Copyright   2015-2022 亚洲供销网版权所有  备案号: 京ICP备2021034106号-51   联系邮箱:5 516 538 @qq.com