Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >会话保持的核心技术点,1分钟了解 | 架构师之路(17)

会话保持的核心技术点,1分钟了解 | 架构师之路(17)

作者头像
架构师之路
发布于 2024-12-24 05:13:10
发布于 2024-12-24 05:13:10
1730
举报
文章被收录于专栏:架构师之路架构师之路

《架构师之路:架构设计中的100个知识点》 17.会话保持相关技术点

为什么大家都不用session sticky了?》中提到了会话保持技术,1分钟说下会话保持的几个相关知识点。

什么是会话保持?

会话保持,是通过负载均衡器将来自同一个用户的请求始终分发到同一台web-server上。这样,session信息仅需要存储在该服务器上,而无需共享。

什么样场景适合使用会话保持?

1. 游戏

2. 无需后端存储,数据一致性要求不高的场景,例如:购物车;

3. 用户量不大,并发量不大,不想把架构搞得太复杂的业务场景;

会话保持可以简化架构设计。

画外音:为了提升扩展性,如今互联网分布式系统架构,非特殊情况,一般不使用会话保持。

那如果使用Nginx实施负载均衡,怎么实现会话保持呢?

Nginx可以通过四层或七层的用户属性hash来实现会话保持。

更具体来说:

(1)四层可以用IP与端口来标识用户,实施hash路由

(2)七层可以用HTTP协议里的uid,cookie,sid来标识用户,实施hash路由;

四层和七层指的是什么?

这个是来源于网络分层模型。

大学“计算机网络”课程,以前是用这个OSI七层模型,新版教程用TCP/IP五层模型,这两个模型之间有一个对应关系如下:

可以看到,四层是指传输层,七层是指应用层。OSI应用层、表示层、会话层合并到TCP/IP的应用层。

有没有二层,三层交换呢?

有。二层,根据数据链路层MAC地址完成数据交换;三层,根据网络层IP地址完成数据交换。

知其然,知其所以然。

思路比结论更重要。

补充阅读材料:

《Nginx负载均衡配置细节》

https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/

文章来自Nginx官网,有图有代码,实操性强,5分钟搞定。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构师之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
一分钟了解四层/七层反向代理 | 架构师之路
上一篇文章《session一致性架构设计实践》,对于其中的第三种“反向代理hash法”,不少同学留言问: 什么是四层反向代理hash 什么是七层反向代理hash 中间还有三层那里去了 ... 今天花几分钟简单和大家解释一下。 场景:访问用户通过proxy请求被访问的真实服务器 路径:用户 -> proxy -> real-server 什么是代理? 回答:[proxy]代表[访问用户],此时proxy是代理。 例如: 在家访问xxoo网站,不希望xxoo网站trace到我们的真实ip,于是就找一个proxy
架构师之路
2018/03/01
3.7K0
一分钟了解四层/七层反向代理 | 架构师之路
架构师聊的四层代理和七层代理,都在聊什么?
日常与大佬沟通或看文章,时不时总会遇到两个概念“四层代理负载均衡”和“七层代理负载均衡”,那么,所谓的四层代理和七层代理分别指的是什么?又在什么场景下用到呢?这篇文章就带大家聊聊这方面的知识点。
程序新视界
2022/05/09
2K0
架构师聊的四层代理和七层代理,都在聊什么?
OSI七层模型 & 交换负载均衡策略研究
计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决。 如果还不能解决,那就加两层,加四层,加七层。OSI七层模型虽然没有得到普及应用,但是其抽象的设计理念及其失败原因有利于我们更加深入地了解互联网底层通信机制以及 TCP/IP 协议簇。 不管是四层还是七层,能通信的就是好模型!
筱竼
2022/08/18
7600
OSI七层模型 & 交换负载均衡策略研究
一篇读懂分布式架构下的负载均衡技术:分类、原理、算法、常见方案等
关于“负载均衡”的解释,百度词条里:负载均衡,英文叫Load Balance,意思就是将请求或者数据分摊到多个操作单元上进行执行,共同完成工作任务。
JackJiang
2019/04/29
3.6K0
四层、七层负载均衡的区别
一,什么是负载均衡(Load balancing) 在网站创立初期,我们一般都使用单台机器对台提供集中式服务,但是随着业务量越来越大,无论是性能上还是稳定性上都有了更大的挑战。这时候我们就会想到通
架构师小秘圈
2018/04/02
28.5K1
四层、七层负载均衡的区别
【万字长文】吃透负载均衡
更多干货内容,请关注公众号:高性能架构探索。回复【pdf】更有计算机经典资料免费获取
高性能架构探索
2021/10/27
7260
到底什么是“四层/七层”交换技术(3分钟解惑)
二层交换 交换原理:根据第二层数据链路层的MAC地址来实现端到端的数据交换; 工作流程: (1)交换机某端口收到数据包,读取源MAC地址,得到源MAC地址机器所连端口; (2)读取目的MAC地址,在地址表中查找对应端口; (3)如果地址表中有目的MAC地址对应端口,直接复制数据至此端口; (4)如果地址表中没有目的MAC地址对应端口,广播所有端口,当目的机器回应时,更新地址表,下次就不需要广播了; 不断的循环上述过程,全网的MAC地址信息都可以学习到,二层交换机就这样学习和维护它的地址表。 第二层交换机根
架构师之路
2018/02/28
2.4K0
网络四层、七层负载均衡的区别
区别 所谓七层负载均衡,也称为“内容交换”,也就是主要通过报文中的真正有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。 以常见的TCP为例,负载均衡设备如果要根据真正的应用层内容再选择服务器,只能先代理最终的服务器和客户端建立连接(三次握手)后,才可能接受到客户端发送的真正应用层内容的报文,然后再根据该报文中的特定字段,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。负载均衡设备在这种情况下,更类似于一个代理服务器。负载均衡和前端的客户端以及后端的服务器会分别建立TCP连接。所以从这个技术原理上来看,七层负载均衡明显的对负载均衡设备的要求更高,处理七层的能力也必然会低于四层模式的部署方式。
sunsky
2021/01/27
9390
网络四层、七层负载均衡的区别
保证session一致性究的5种方法!(第40讲)
服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。
架构师之路
2025/03/04
850
保证session一致性究的5种方法!(第40讲)
浅谈负载均衡
负载均衡,英文:Load Balance,其含义是请求分发到多个粒度单元上进行执行操作,例如各种服务器、应用服务、中台服务、数据服务等,从而达到共同完成某项任务的目的。为了拓宽网络设备和服务器的带宽、增加吞吐量、加强网络请求处理能力、提高网络的灵活性和高可用性,负载均衡是一种廉价、有效、透明的方法,它为服务的高并发做了一次缓冲,让单个服务的压力瞬间减少,实现了服务的高可用,避免服务因为压力而面临宕机的危险。
程序猿Damon
2020/05/25
6780
四层、七层负载均衡1
七层负载均衡:负载均衡器与客户端及后端的服务器会分别建立一个TCP连接。即两次TCP连接。
随心助手
2019/10/15
1K0
四层、七层负载均衡1
Kubernetes 架构核心点详细总结!
一个目标:容器操作;两地三中心;四层服务发现;五种Pod共享资源;六个CNI常用插件;七层负载均衡;八种隔离维度;九个网络模型原则;十类IP地址;百级产品线;千级物理机;万级容器;相如无亿,K8s有亿:亿级日服务人次。
我的小碗汤
2023/03/19
4730
Kubernetes 架构核心点详细总结!
玩转企业集群运维管理系列(一):负载均衡基础入门
在这之前,我们相继卷完了:关系型数据库 MySQL 、 NoSQL 数据库 Redis 、 MongoDB 、搜索引擎 ElasticSearch 、大数据 Hadoop框架、PostgreSQL 数据库、消息中间件 Kafka、分布式协调中间件 Zookeeper、消息中间件 RabbitMQ、企业级监控平台、企业常用应用与服务等这些系列的知识体系。
民工哥
2023/12/02
6760
玩转企业集群运维管理系列(一):负载均衡基础入门
TCP/IP 协议的基础知识
DNS(Domain Name System),它和 HTTP 协议一样是位于应用层的协议,主要提供域名到
用户5640963
2019/07/25
5110
7层负载均衡与4层负载均衡区别
OSI: open system interconnection 开放式系统互联参考模型
用户1392128
2024/01/08
9330
7层负载均衡与4层负载均衡区别
为什么大家都不用session sticky了? | 架构师之路(14)
《DNS在架构设计中的三大妙用》发布后,有个朋友反馈:虽然DNS轮询能随时扩展Nginx,NG后端也能随时扩展web-server,但这两种方案都不满足session sticky。
架构师之路
2024/12/24
1330
为什么大家都不用session sticky了? | 架构师之路(14)
理解负载均衡(Load balance)
负载均衡(Load balance),是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或者其他资源中分配负载,已达到最优化资源使用、最大吞吐率、最小化响应时间、同时避免过载的目的。
kevinfaith
2020/01/21
1.6K0
session一致性架构设计实践
一、缘起 什么是session? 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。 Web开发中,web-server可以自动为同一个浏览器的访问用户自动创建s
架构师之路
2018/03/01
1.5K0
session一致性架构设计实践
一篇读懂分布式架构下的负载均衡技术:分类、原理、算法、常见方案等
关于“负载均衡”的解释,百度词条里:负载均衡,英文叫Load Balance,意思就是将请求或者数据分摊到多个操作单元上进行执行,共同完成工作任务。
JackJiang
2019/05/13
1.4K0
一篇读懂分布式架构下的负载均衡技术:分类、原理、算法、常见方案等
你真的掌握 LVS、Nginx 及 HAProxy 的工作原理吗?
当前大多数的互联网系统都使用了服务器集群技术,集群是将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是 Web 应用服务器集群,也可以是数据库服务器集群,还可以是分布式缓存服务器集群等等。
猿哥
2019/03/22
1.2K0
你真的掌握 LVS、Nginx 及 HAProxy 的工作原理吗?
相关推荐
一分钟了解四层/七层反向代理 | 架构师之路
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档