麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Java > 正文

SpringCloud實現Redis在各個微服務的Session共享問題

2024-07-14 08:42:07
字體:
來源:轉載
供稿:網友

在微服務中,需要我們在各個微服務中共享Session,使用Redis來共享Session是一個很好的解決方法,Redis是運行在內存中,查取速度很快。

1.pom文件中添加依賴

<dependency>     <groupId>org.springframework.boot</groupId>     <artifactId>spring-boot-starter-redis</artifactId> </dependency> <dependency>     <groupId>org.springframework.session</groupId>     <artifactId>spring-session-data-redis</artifactId> </dependency> 

2.使用Redis的session替換Spring的session

package com.xueqing.demo.sleuthserverhi;import org.springframework.context.annotation.Configuration;import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;/** * 添加redis配置類啟用redis代碼spring默認session */@Configuration@EnableRedisHttpSessionpublic class RedisSessionConfig {}

3.application.properties配置文件中添加redis配置

spring.redis.port= 6379spring.redis.host=localhost

4.啟動兩個端口以一樣的tomcat測試

package com.xueqing.demo.sleuthserverhi;import java.util.logging.Level;import java.util.logging.Logger;import brave.sampler.Sampler;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.client.RestTemplate;import javax.servlet.http.HttpServletRequest;@SpringBootApplication@RestControllerpublic class SleuthServerHiApplication {  public static void main(String[] args) {    SpringApplication.run(SleuthServerHiApplication.class, args);  }  private static final Logger LOG = Logger.getLogger(SleuthServerHiApplication.class.getName());  @Autowired  private RestTemplate restTemplate;  @Bean  @LoadBalanced  public RestTemplate getRestTemplate(){    return new RestTemplate();  }  @RequestMapping("/hi")  public String callHome(HttpServletRequest request){    LOG.log(Level.INFO, "calling trace service-hi ");    request.getSession().setAttribute("hi","111");    LOG.log(Level.WARNING, "加入成功");    return restTemplate.getForObject("http://localhost:8989/miya", String.class);  }  @RequestMapping("/info")  public String info(HttpServletRequest request){    LOG.log(Level.INFO, request.getSession().getAttribute("miya")+"");    LOG.log(Level.WARNING, "獲取成功");    return "i'm service-hi";  }  @Bean  public Sampler defaultSampler() {    return Sampler.ALWAYS_SAMPLE;  }}package com.xueqing.demo.sleuthservermiya;import brave.sampler.Sampler;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.client.RestTemplate;import javax.servlet.http.HttpServletRequest;import java.util.logging.Level;import java.util.logging.Logger;@SpringBootApplication@RestControllerpublic class SleuthServerMiyaApplication {  public static void main(String[] args) {    SpringApplication.run(SleuthServerMiyaApplication.class, args);  }  private static final Logger LOG = Logger.getLogger(SleuthServerMiyaApplication.class.getName());  @RequestMapping("/hi")  public String home(HttpServletRequest request){    LOG.log(Level.INFO, "hi is being called");    request.getSession().setAttribute("miya","111");    LOG.log(Level.WARNING, "加入成功");    return "hi i'm miya!";  }  @RequestMapping("/miya")  public String info(HttpServletRequest request){    LOG.log(Level.INFO, "info is being called");    LOG.log(Level.INFO, request.getSession().getAttribute("hi")+"");    LOG.log(Level.WARNING, "獲取成功");    return restTemplate.getForObject("http://localhost:8988/info",String.class);  }  @Autowired  private RestTemplate restTemplate;  @Bean  @LoadBalanced  public RestTemplate getRestTemplate(){    return new RestTemplate();  }  @Bean  public Sampler defaultSampler() {    return Sampler.ALWAYS_SAMPLE;  }}

5.注意事項:我用的springCloud版本為F版本需要Redis版本為2.8以上 如果不是2.8以上請升級,地址如下                                    

https://github.com/MicrosoftArchive/redis/releases

總結

以上所述是小編給大家介紹的SpringCloud實現Redis在各個微服務的Session共享,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产成人羞羞视频在线 | 久草手机在线视频 | 午夜精品久久久久久中宇 | 一区二区三区精品国产 | 亚洲成人中文字幕在线 | 日本一区免费看 | 污视频在线免费 | 少妇淫片免费一级毛片 | 国内成人自拍视频 | av免费在线观看不卡 | 一区二区三区日韩在线观看 | 91成人免费在线观看 | 久久国产精品久久久久久电车 | 亚洲综合精品 | 中国久久久| 91网视频| 成人国产精品久久久 | 亚洲极色 | 91精品国产综合久久婷婷香蕉 | 免费看黄色一级大片 | 国产一区免费在线 | 久久久久av电影 | 日韩精品一区二区三区中文 | 一级裸体视频 | 国产亚洲精品视频中文字幕 | 成人免费在线视频播放 | 黄色网址入口 | 一区二区久久电影 | 国产亚洲精品久久久闺蜜 | 欧美a在线观看 | 看个毛片 | 羞羞视频在线免费 | 五月婷婷第四色 | 欧美xxxx精品另类 | 黄色一级片在线免费观看 | 一起草av在线 | 成年人激情在线 | 国产1区2 | 草操影院 | 女人解衣喂奶电影 | 免费观看国产视频 |