传统项目基于tomcat cookie单体会话升级分布式会话解决方案

传统捞项目基于servlet容器 cookie单体会话改造分布式会话方案

##引入redis,spring-session依赖

java 复制代码
<!--redis依赖 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.session</groupId>
      <artifactId>spring-session-data-redis</artifactId>
    </dependency>

##修改配置文件

java 复制代码
spring:
  application:
    name: hnmop-consumer
  session:
    timeout: 3600
    store-type: redis
    redis:
      namespace: yym:session
  redis:
    lettuce:
      pool:
        max-idle: 50
        min-idle: 10
        max-wait: 300
        max-active: 25
    timeout: 30000
    cluster:
      nodes:
        - 192.168.3.156:6379
        - 192.168.3.156:6380
        - 192.168.3.156:6381
        - 192.168.3.156:6382
        - 192.168.3.156:6383
        - 192.168.3.156:6384
#        - redis-service.hdsst-ns.svc.cluster.local:6379
#        - redis-service.hdsst-ns.svc.cluster.local:6379
#        - redis-service.hdsst-ns.svc.cluster.local:6379
#        - redis-service.hdsst-ns.svc.cluster.local:6379
#        - redis-service.hdsst-ns.svc.cluster.local:6379
#        - redis-service.hdsst-ns.svc.cluster.local:6379
    password: 123456
    database: 0

##启动类加入EnableRedisHttpSession注解

复制代码
@EnableRedisHttpSession(redisNamespace = "yym:session", maxInactiveIntervalInSeconds = 3600)

##原理

##spring自动配置spring.factories

##生成SessionRepositoryFilter过滤器对象

##使用包装的SessionRepositoryRequestWrapper的request SessionRepositoryResponseWrapper的response

相关推荐
mldlds26 分钟前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
xxjj998a32 分钟前
Spring Boot 整合 Apollo 配置中心实战
java·spring boot·后端
武超杰1 小时前
Spring 纯注解配置全解析(进阶版)
java·开发语言
AC赳赳老秦1 小时前
OpenClaw关键词挖掘Agent配置(附SOP脚本,可直接复制使用)
java·大数据·开发语言·人工智能·python·pygame·openclaw
茶本无香1 小时前
JDK 21 ZGC分代功能详解:配置、原理及生产环境实践
java·jvm
xxjj998a1 小时前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
wellc1 小时前
Spring Boot 热部署
java·spring boot·后端
金銀銅鐵2 小时前
[Java] 从 class 文件看动态代理
java·后端
C++ 老炮儿的技术栈2 小时前
两个线程对socket 进行读和写,需要加锁吗
java·服务器·网络
萍萍学习2 小时前
蓝桥杯JAVA-4
java·职场和发展·蓝桥杯