负载均衡接入怎么实现基于 Cookie 或源 IP 的会话保持(Session Persistence)

云明同学_5726

云明同学_5726

2026-10-21

613人浏览

原创

会话保持核心是让同一客户端请求固定落到同一后端服务器,常用方式为基于源ip或cookie:源ip通过哈希取模实现,配置简单兼容性好但受nat和ip变动影响;cookie通过插入并解析自定义键值实现,灵活可靠但依赖客户端支持。

负载均衡接入怎么实现基于 cookie 或源 ip 的会话保持(session persistence)

负载均衡接入时实现会话保持,核心是让同一客户端的多次请求固定落到同一台后端服务器。常用方式就是基于 Cookie 或源 IP,两者原理不同、适用场景也不同,选对方法才能稳定又省事。

基于源 IP 的会话保持

负载均衡器拿到请求后,提取客户端的源 IP 地址,通过哈希算法(比如 CRC32 或 MD5)算出一个值,再对后端服务器数量取模,结果唯一对应某台服务器。后续来自该 IP 的请求,只要哈希规则不变,就会持续转发到同一台机器。

Ai Session Analysis
Ai Session Analysis

用于分析本地AI编程助手会话数据(如Claude Code、Codex、Kimi Code)。当用户请求分析编程会话时触发。

下载
  • 配置简单,Nginx 只需一行 ip_hash; 就能启用
  • 不依赖浏览器 Cookie,兼容性好,适合老旧或特殊终端环境
  • 缺点也很明显:NAT 环境下多个用户共用一个出口 IP,会被当成同一客户端;手机网络切换基站、Wi-Fi 切 4G 也会导致 IP 变更,引发会话中断
  • 适用于内部系统、局域网服务或对一致性要求不高但对兼容性要求高的场景

基于 Cookie 的会话保持

这是 Web 应用更主流的选择。负载均衡器在首次响应中插入一个自定义 Cookie(比如 ROUTEID=server-01),浏览器自动保存并随后续请求携带。负载均衡器解析这个 Cookie 值,直接映射到对应后端节点。

  • Nginx 可用 sticky cookie 指令,例如:sticky cookie srv_id expires=1h domain=.example.com path=/;
  • HAProxy 用 cookie SERVERID insert indirect nocache,并在后端 server 行加上 cookie server-01
  • 支持过期时间、域名和路径控制,灵活性高;不受 IP 变更影响,更适合公网用户
  • 前提是客户端必须开启 Cookie 支持,且不能被拦截或清除;若应用本身已有 JSESSIONID,可选择重写模式复用它,避免新增 Cookie

怎么选?关键看你的业务特点

如果用户基本固定在内网、IP 稳定,且不想改任何应用逻辑,源 IP 方式够用;如果是面向公众的网站或 App,用户网络环境复杂,推荐基于 Cookie —— 它更可靠,也更容易配合 Java 应用的 Session 生命周期管理,比如设置 Max-Age 与后端 Session 超时对齐,避免“Cookie 还在,Session 已丢”的尴尬。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

940

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3072

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1016

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

909

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

474

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2796

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5212

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

827

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Revel 官方 app.conf 文档
Revel 官方 app.conf 文档

共0课时 | 0人学习

php注册登录系统开发实战
php注册登录系统开发实战

共10课时 | 13.8万人学习

PHP基于Cookie的购物车模块设计
PHP基于Cookie的购物车模块设计

共10课时 | 11.1万人学习