Redis实现分布式Session管理Memcached管理机制
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F71ae6170j00r2fuac000oc000lu00b8m.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
Redis管理机制redis的session管理是利用spring提供的session管理解决方案,将一个应用session交给Redis存储,整个应用中所有session的请求都会去redis中获取对应的session数据。
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2Fd376f60bj00r2fuac000sc000mh00csm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
SpringBoot项目开发Session管理引入依赖pop.xmlorg.springframework.bootspring-boot-starter-data-redisorg.springframework.session
spring-session-data-redisorg.springframework.bootspring-boot-starter-tomcatprovided开发Session管理配置类(使用注解)
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F528043e1j00r2fuac001ac000nk008ym.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
@Configuration@EnableRedisHttpSession //将整个应用中使用session的数据全部交给redis处理public class RedisSessionManager {
}Controller层设计package com.xizi.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;
import java.util.ArrayList;import java.util.List;@Controller@RequestMapping("test")public class TestController {
//使用redis 的session管理 注意:当session中数据发生变化时必须将session中变化的数据同步到redis中@RequestMapping("test")public void test(HttpServletRequest request, HttpServletResponse response) throws IOException {
List list = (List) request.getSession().getAttribute("list");if(list==null){list = new ArrayList<>();
}list.add("xxxx");request.getSession().setAttribute("list",list);//每次session变化都要同步sessionresponse.getWriter().println("size: "+list.size());
response.getWriter().println("sessionid: "+request.getSession().getId());}@RequestMapping("logout")public void logout(HttpServletRequest request){
//退出登录request.getSession().invalidate();//失效}}打包测试
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2Fb4463be0j00r2fuac0020c000nm00bvm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
Nginx+Tomcat集群+Redis测试Nginx相关配置
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F000f6230j00r2fuac0018c000nn00cfm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2Fcc6d6f63j00r2fuac001xc000nn00flm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
Tomcat集群
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F44f392d7p00r2fuac000tc000nl001um.png&thumbnail=660x2147483647&quality=80&type=jpg)
//这是tom4 后面的两个端口号依次+1//关闭端口//连接端口connectionTimeout="20000"redirectPort="8443" />
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F92e5bceep00r2fuac0014c000nm003hm.png&thumbnail=660x2147483647&quality=80&type=jpg)
改变初始页面index.jsp
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F1cbd12a7j00r2fuac000kc000ng00afm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
3.Redis集群已经开启了,看我前面的Redis集群搭建博客不会的去
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F3b272548j00r2fuac002vc000nm00ebm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
测试上传war包到三个Tomcat的Webapps目录下
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2Fe7ad82d0j00r2fuac001mc000nr00fhm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
直接访问Nginx页面,反向代理了Tomcat集群
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F5e5574faj00r2fuac001jc000nq00egm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2Fe11ad44aj00r2fuac001ec000np00dpm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
![](https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2021%2F1112%2F4f9dd0d4j00r2fuac0018c000nn00bpm.jpg&thumbnail=660x2147483647&quality=80&type=jpg)
GiF演示一波
![](http://ldjg88.com/zb_users/upload/2024/06/20240607061245171771196521014.gif)
作者:戏子zzzzjava开发Redis基础篇之复制和哨兵概念java开发技术之Redis入门篇集群模式的分析java开发技术之Redis类型技能入门篇java开发技术中Redis入门之持久化技能
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。