当前位置:网站首页>redis解决分布式session问题
redis解决分布式session问题
2022-08-04 09:23:00 【鱼子酱:P】
- a、什么是session
session是一种会话技术,我们知道http是无状态协议的,就是这次连接传输数据后,下次连接服务器是不知道这次的请求是谁的,因此我们要做一个标记,让服务器知道每次请求是哪个(客户端)浏览器发出的,就是请求的时候服务器会创建一个session把session的值保存在服务器,把sessionID返回给浏览器,请求的时候把sessionID放在请求头中,这样服务器解析之后就能发现是哪个浏览器发来的请求
- b、session存放在什么地方,会引起什么问题
session是存在服务器的,只是把sessionID返回给浏览器。这样我们把浏览器关掉,session也不会实现,但是只是丢失了sessionID,这样也是访问不到的。
- c、session的工作原理
session是由服务器创建的,存放在服务器中,把sessionID返回给浏览器,请求的时候,每次请求把sessionID就到请求头中,服务器解析以后就知道是哪个浏览器
- e、分布式session是什么
我们知道session是保存在服务器的,这样当我们的项目做了负载均衡以后,如果在session中存了数据,那么就有可能有有些项目取不到session中的数据,这就是分布式session问题

通常我们在开发后台管理系统时,会使用 Session 来保存用户的会话(登录)状态,这些 Session 信息会被保存在服务器端,但这只适用于单系统应用,如果是分布式系统此模式将不再适用。
例如用户一的 Session 信息被存储在服务器一,但第二次访问时用户一被分配到服务器二,这个时候服务器并没有用户一的 Session 信息,就会出现需要重复登录的问题,问题在于分布式系统每次会把请求随机分配到不同的服务器。
分布式系统单独存储 Session 流程图:

因此,我们需要借助 Redis 对这些 Session 信息进行统一的存储和管理,这样无论请求发送到那台服务器,服务器都会去同一个 Redis 获取相关的 Session 信息,这样就解决了分布式系统下 Session 存储的问题。
分布式系统使用同一个 Redis 存储 Session 流程图:

边栏推荐
猜你喜欢

ZbxTable 2.0 重磅发布!6大主要优化功能!

I am 37 this year, and I was rushed by a big factory to...
![[Punctuality Atomic STM32 Serial] Chapter 1 Learning Method of the Book Excerpted from [Punctuality Atomic] MiniPro STM32H750 Development Guide_V1.1](/img/99/23e3dcb426769a415e33f7ff51bbb8.png)
[Punctuality Atomic STM32 Serial] Chapter 1 Learning Method of the Book Excerpted from [Punctuality Atomic] MiniPro STM32H750 Development Guide_V1.1
![No module named 'flask_misaka' has been resolved [BUG solution]](/img/cc/e379d23a41330d2335dd192e16e821.png)
No module named 'flask_misaka' has been resolved [BUG solution]
![Detailed Explanation of Addresses Delivered by DHCP on Routing/Layer 3 Switches [Huawei eNSP]](/img/9c/b4ebe608cf639b8348adc1f1cc71c8.png)
Detailed Explanation of Addresses Delivered by DHCP on Routing/Layer 3 Switches [Huawei eNSP]

【正点原子STM32连载】第四章 STM32初体验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1

他97年的,我既然卷不过他...

telnet远程登录aaa模式详解【华为eNSP】

Grafana9.0发布,Prometheus和Loki查询生成器、全新导航、热图面板等新功能!

ps如何换背景颜色,自学ps软件photoshop2022,3种不同的方式笔记记录
随机推荐
请问同一个oracle cdc表,如果flink job重新提交,是会全量读取一遍源数据还是增量呢?
《福格行为模型》:如何养成好习惯?
MindSpore:【mindinsight】【Profiler】用execution_time推导出来的训练耗时远小于真实的耗时
leetcode二叉树系列(一)
leetcode每天5题-Day06
yuv420sp转jpg
低代码应用开发的五大好处
LeetCode中等题之设计循环队列
请问下Flink SQL如何写hologres分区表?我想要每天一个分区
加降息与BTC流动性事件策略研究
MindSpore:mirrorpad算子速度过慢的问题
【正点原子STM32连载】第二章 STM32简介 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
Apache APISIX 2.15 版本发布,为插件增加更多灵活性
SQL后计算的利器
Detailed explanation of telnet remote login aaa mode [Huawei eNSP]
暴力破解-破解 Apache BASIC 认证
如何快速将Zabbix5.0升级至6.0?
leetcode二叉树系列(二叉搜索树篇)
After four years of outsourcing, the autumn recruits finally landed
Could you please talk about how the website is accessed?[Interview questions in the web field]