SpringBoot——Redis实现分布式集群Session共享

1.添加pom.xml依赖

org.springframework.boot
  spring-boot-starter-data-redis

  org.springframework.session
  spring-session-data-redis

2.添加RedisSessionConfig.java配置

import org.springframework.context.annotation.Configuration;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;

/**
 * @EnableRedisHttpSession 开启Redis Session缓存
 * maxInactiveIntervalInSeconds: session过期时间
 *
 * */
@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 30)
public class RedisSessionConfig {

}

3.添加application.yml配置

spring:
  redis:
    database: 0
    host: localhost
    port: 6379
    password:

4.添加controller测试代码

@RestController
@RequestMapping("/user-info")
public class UserInfoController {

    //测试
    @GetMapping("/list2")
    public Map setSession(HttpServletRequest request) {

        Map map = new HashMap<>();
        request.getSession().setAttribute("request Url", request.getRequestURL());
        map.put("request Url", request.getRequestURL());
        return map;
    }

    @GetMapping("/list3")
    public Map getSession(HttpServletRequest request) {

        Map map = new HashMap<>();
        map.put("sessionIdUrl", request.getSession().getAttribute("request Url"));
        map.put("sessionId", request.getSession().getId());
        return map;
    }

}

5.修改idea配置 启动多个节点项目

第一个节点正常启动就可以了,我application.yml里面配了8771

第二个节点需要改端口号,我这里设置8772

SpringBoot------Redis实现分布式集群Session共享

6.依次访问地址

http://127.0.0.1:8771/user/user-info/list2

http://127.0.0.1:8771/user/user-info/list3

http://127.0.0.1:8772/user/user-info/list3

发现:

两个节点获取到的SessionId是一致的,表明多节点实现Session共享

SpringBoot------Redis实现分布式集群Session共享

SpringBoot------Redis实现分布式集群Session共享

Original: https://www.cnblogs.com/tianhengblogs/p/15325247.html
Author: 玉天恒
Title: SpringBoot——Redis实现分布式集群Session共享

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/529130/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • JavaWeb创建一个公共的servlet

    对于初学者来说,每次前端传数据过来就要新建一个类创建一个doget、dopost方法,其实铁柱兄在大学的时候也是这么玩的。后面铁柱兄开始认真了,就想着学习点容易的编程方式,其实说白…

    Linux 2023年6月13日
    0104
  • WEB自动化-03-Cypress 测试框架概述

    3 Cypress 测试框架概述 3.1 Cypress 默认文件结构 在Cypress安装完成后,其生成的默认文件目录如下所示: 3.1.1 Fixtures Fixture又称…

    Linux 2023年6月7日
    0119
  • 渗透测试常用方法总结

    转载自 https://blog.csdn.net/qq_42636435/article/details/92839738 Original: https://www.cnblo…

    Linux 2023年6月7日
    083
  • KVM 虚机镜像操作, 扩容和压缩

    qemu-img命令 创建镜像 qemu-img create 创建一个设备空间大小为10G的镜像 qemu-img create -f qcow2 centos7-guest.q…

    Linux 2023年5月27日
    089
  • HBuilderX配置外部服务器(tomcat)查看编辑jsp界面

    HBuilderX配置外部服务器(tomcat)查看编辑jsp界面 一、第一种方法,通过启动本地tomcat,查看jsp 在tomcat的webapps目录下创建文件夹HBuild…

    Linux 2023年6月7日
    082
  • 全网唯一的、DIY的Prometheus高可用方案,生产未上,测试先行。

    写在开篇 关于prometheus的高可用方案,经过笔者不断的研究、对比、和搜索,发现不管是官方、还是各大搜索引擎搜索出来的方案,都不符合笔者的需求。因此,笔者自己设计了一套pro…

    Linux 2023年6月7日
    085
  • [转帖]Redis RDB 分析工具 rdbtools 说明

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年5月28日
    0107
  • zenity,把shell加上图形界面

    有时自己写点小工具自己用,比较喜欢非图形界面的,可是有些应用还是弹出个东西来提醒一下,才能让你注意。 zenity是个很帅的东西,它用法可以参考它的–help ,这里不…

    Linux 2023年5月28日
    094
  • mycat2 读写分离配置(详解)

    mycat2相对mycat1来说升级还挺多的,但是全网资料太少了,这里尽可能详细的将读写分离说清楚,目前这套配置已经在我司生产环境应用,日UV6W左右,暂时没发现问题。 1.1下载…

    Linux 2023年6月6日
    0111
  • Unity Profiler的使用

    选中Development Build、Autoconnect Profiler和Script Debugging三个选项,如下图所示。 点击Build And Run按钮,将会编…

    Linux 2023年6月7日
    098
  • hexo 升级5.4.0出现错误解决方法-hexo-theme-butterfly

    本篇文章已同步个人博客,可移步食用。hexo 升级 5.4.0 出现错误解决方法 -hexo-theme-butterfly 周末升级了下 hexo 到新版本,发现升级后,构建时出…

    Linux 2023年6月7日
    0111
  • make

    make 背景 gcc 在编译一个包含多个源文件的工程时, gcc需要将每一个源文件都编译一遍,任何再链接起来形成一个可执行文件。实际上,用户很少对所有源文件都进行修改,这就会造成…

    Linux 2023年6月7日
    0107
  • SQLI-LABS(Less-7)

    Less-7(GET-Dump into outfile-String) 打开 Less-7页面,可以看到页面中间有一句 Please input the ID as parame…

    Linux 2023年6月6日
    080
  • SpringMVC底层——请求参数处理流程描述

    在DispatcherServlet.java的doDispatch方法中,springmvc通过handlermapping里面找哪个handler能处理请求,handler封装…

    Linux 2023年6月6日
    0150
  • linux系统引导过程

    linux系统引导过程 linux-0.11引导时,将依次运行BIOS程序、bootsect.s、setup.s和head.s,完成引导过程后进入到main函数运行。BIOS完成硬…

    Linux 2023年6月13日
    074
  • DHCP服务

    一、dhcp介绍 dhcp 应用层协议 动态主机配置协议 作用: 为主机动态分配tcp/ip参数(ip地址、掩码、网关、DNS服务器地址) Linux实现dhcp服务 软件: dh…

    Linux 2023年6月7日
    089
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球