分布式Session解决方案_Spring Session + Redis

接上一篇:分布式6大核心专题_分布式Session
https://gblfy.blog.csdn.net/article/details/113802195

文章目录

            • 1. 安装redis服务并启动
            • 2. 引入Spring Session组件
            • 3. 分别启动8081端口和8082端口
            • 4. 调用8081登录接口
            • 5. 调用8081获取用户信息接口
            • 6. 调用8082获取用户信息接口

实现流程:
1.安装redis服务并启动
2.引入Spring Session组件
3.演示同一程序启动8081端口和8082端口模拟2个服务器分布式
4.调用8081登录接口
5.调用8081获取用户信息接口
6.调用8082获取用户信息接口

1. 安装redis服务并启动
docker run -d -p 6379:6379 redis:5
2. 引入Spring Session组件

存放查信息的容器有redis、jdbc、mongodb等,演示redis容器
在这里插入图片描述

pom

       <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><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>

application.yml

spring:redis:host: 192.168.0.113 #ip地址port: 6379 #端口password: #密码session:store-type: redis #存放的容器timeout: 3600 #过期时间
server:port: 8081 #应用web端口

案例代码

package com.gblfy.distributedsession.controller;import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpSession;@RequestMapping("/user")
@RestController
public class UserController {@GetMapping("/login")public String login(@RequestParam String username,@RequestParam String password,HttpSession session){//账号密码正确session.setAttribute("login_user", username);return "登录成功";}@GetMapping("/info")public String info(HttpSession session) {return "当前登录的是:" + session.getAttribute("login_user");}
}
3. 分别启动8081端口和8082端口

同上一篇

4. 调用8081登录接口
#登录接口
http://localhost:8081/user/login?username=admin&password=admin
5. 调用8081获取用户信息接口
#获取用户信息接口
http://localhost:8081/user/info
6. 调用8082获取用户信息接口
#获取用户信息接口
http://localhost:8082/user/info

测试结论:可以正常获取用户信息,关闭8081服务器,也是一样的,因为用户信息存放在redis服务端,不在应用本地,除非把redis关闭。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/518864.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

酸了!华为补贴湖北员工每天最高 2000 元

近日&#xff0c;华为员工发帖称&#xff0c;华为将给武汉研究所现场办公的人员&#xff0c;每人补助2000元&#xff08;从2020年1月23日开始算&#xff0c;以湖北发布疫情终止之日截止&#xff09;&#xff0c;湖北以外其他地区1000 元&#xff0c;海外每天150美金&#xff08…

java.lang.IllegalArgumentException: invalid comparison: java.time.LocalDateTime and java.lang.String

数据库字段&#xff1a; 数据库中的时间字段handle_time是datatime 前端&#xff1a; xml文件&#xff1a; 运行结果&#xff1a; 原因 这是因为原因是mybatis 中对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串进行对比判断则会引发异常. 所以在上面…

四年从P7到P9,这个阿里小二的秘诀是给自己挖坑

恶魔有一头精彩的头发。 “紫色、灰色、灰色、雾霾蓝色、黄色、蓝色、紫色、绿色、灰色、绿色。” 若有人问起她的染发史&#xff0c;她能准确地报出过去两年里的所有发色。干脆利落&#xff0c;没半个字多余。 恰如她在工作中给大多数人的印象&#xff1a;语速极快&#xf…

达摩院首席数据库科学家李飞飞:云原生新战场,我们如何把握先机?

阿里妹导读&#xff1a;云计算大潮来袭&#xff0c;传统数据库市场正面临重新洗牌的情境&#xff0c;包括云数据库在内的一批新生力量崛起&#xff0c;动摇了传统数据库的垄断地位&#xff0c;而由云厂商主导的云原生数据库则将这种“改变”推向了高潮。 云时代的数据库将面临怎…

什么? 搞不定redis分布式锁?

作者&#xff1a;故事凌 分布式锁 1. 什么是分布式锁 分布式锁是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中&#xff0c;常常需要协调他们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源&#xff0c;那么访问这些资源的时候&am…

阿里云CDN技术掌舵人文景:相爱相杀一路狂奔的这十年

提到阿里云CDN&#xff0c;不得不提技术掌舵人姚伟斌&#xff08;文景&#xff09;&#xff0c;虽然他不是团队中最“老”的同学&#xff0c;但他却历经了淘宝业务发展最为飞速的几年&#xff0c;见证了从最初服务淘宝和集团内部的CDN&#xff0c;到如今国内服务客户最多的云CD…

把握数据库发展趋势 DBA应如何避免“踩坑”?

在DTCC 2019大会上&#xff0c;阿里云智能数据库产品事业部高级产品专家萧少聪做了题为《如何构建云时代DBA的知识体系》的演讲&#xff0c;进行云时代以后&#xff0c;IT行业各工种的职责都在发生变化&#xff0c;云数据库使得日常DBA管理实现更多的自动化&#xff0c;大大提高…

DevOps 转型时如何安全融入?对企业产出有何影响?2019年 DevOps 最新现状研究报告解读 | 原力计划...

作者 | liumiaocn责编 | 徐威龙封图| CSDN 下载于视觉中国2019年DORA发布了DevOps的研究报告&#xff0c;迄今为止这已经是DORA的第八次报告的发布。相较于往年的报告&#xff0c;2019年的报告全篇只聚焦于一个要素&#xff1a;安全。在2018年DORA提供了一个包含五个步骤的模型…

开源性能可视化工具——FlameScope模式识别

FlameScope是一个新的开源性能可视化工具&#xff0c;它使用次秒级偏移热图和火焰图来分析周期活动、方差、扰动。我们在Netflix TechBlog上面&#xff0c;发表了技术文章Netflix FlameScope&#xff0c;以及工具的源代码。火焰图很好理解&#xff0c;次秒级偏移热图理解起来要…

在腾讯云开通短信验证服务设置正确格式的签名和正文模板并完成群发消息测试

链接&#x1f449; https://blog.csdn.net/weixin_45001200/article/details/118878336?spm1001.2014.3001.5501 经历了一晚上的审核&#xff0c;终于在第二天近10点发来了测试验证码......

独家揭秘:阿里小程序的一云多端!看这篇就够了!

专家介绍 视频回放 https://yq.aliyun.com/live/1097 阿里小程序的一云多端 相信绝大部分同学知道阿里一云多端的项目&#xff0c;最早始于19年三月份在北京云栖大会上&#xff0c;阿里云的CEO在云栖大会上对外发布了一云多端的项目。 一云多端是什么? 大家今天常见都是微…

Docker 概念很难理解?一文搞定 Docker 端口绑定

作者 | Dieter Jordens译者 | 苏本如&#xff0c;责编 | 夕颜出品 | CSDN&#xff08;ID:CSDNnews&#xff09;以下为译文&#xff1a;作为初级开发人员的你&#xff0c;是不是参加过这样的面试&#xff0c;在面试中面试官希望你准确地回答Docker的工作原理&#xff1f;现今的面…

阿里云高级技术专家张毅萍:我眼中的边缘计算

边缘计算是目前公认的大方向&#xff0c;越来越多的边缘计算应用将随着5G建设的步伐而兴起。阿里云边缘计算团队的目标是在行业爆发来临之前&#xff0c;完成基础计算资源平台的构建&#xff0c;为产业提供基于体验的计算调度能力&#xff0c;进而助推整个产业快速应用发展。那…

docker 安装 mysql和Navicat Premium 远程连接

文章目录1. 安装mysql2. Navicat Premium 远程连接1. 安装mysql # 通过搜索镜像 docker search mysql# 拉取mysql镜像 docker pull mysql# 查看拉取的mysql镜像 docker images#创建MySQL容器 docker run -di --name mymysql -p 3306:3306 -e MYSQL_ROOT_PASSWORDroot mysql# 查…

牛客网SQL篇刷题篇(1-2)

https://www.nowcoder.com/ta/sql

阿里PB级Kubernetes日志平台建设实践

阿里PB级Kubernetes日志平台建设实践 QCon是由InfoQ主办的综合性技术盛会&#xff0c;每年在伦敦、北京、纽约、圣保罗、上海、旧金山召开。有幸参加这次QCon10周年大会&#xff0c;作为分享嘉宾在刘宇老师的运维专场发表了《阿里PB级Kubernetes日志平台建设实践》&#xff0c…

果断拿下4000万美元D轮融资,Rancher发力中国本土化与国产化!

2020年3月17日&#xff0c;业界应用广泛的Kubernetes管理平台创建者Rancher Labs&#xff08;以下简称Rancher&#xff09;宣布完成新一轮4000万美元D轮融资。 本轮融资由Telstra Ventures领投&#xff0c;既有投资者Mayfield、Nexus Venture Partners、国富绿景创投&#xff0…

MySQL 8.0 技术详解

MySQL 8.0 简介 MySQL 5.7 到 8.0&#xff0c;Oracle 官方跳跃了 Major Version 版本号&#xff0c;随之而来的就是在 MySQL 8.0 上做了许多重大更新&#xff0c;在往企业级数据库的路上大步前行&#xff0c;全新 Data Dictionary 设计&#xff0c;支持 Atomic DDL&#xff0c…

解决:Error response from daemon: manifest for xxx:latest not found: manifest unknown...

在使用docker 拉去最新的镜像时&#xff0c;会提示如下错误&#xff1a; 这里错误的意思是docker需要我们指定下载镜像的版本号。 但是我们想下载最新的版本号&#xff0c;该如何得知最新的版本号呢&#xff1f; 我们可以登录docker hub&#xff1a;https://hub.docker.com/…

牛客网SQL篇刷题篇(3-10)

https://www.nowcoder.com/ta/sql 1.inner join 和left join &#xff08;1&#xff09;在表中存在至少一个匹配时&#xff0c;INNER JOIN 关键字返回行。 SELECT *** FROM A INNER JOIN B ON 条件 注释&#xff1a;INNER JOIN 与 JOIN 是相同的。 &#xff08;2&#…