springboot+redis實現session共享


1.場景描述

因項目訪問壓力有點大,需要做負載均衡,但是登錄使用的是公司統一提供的單點登錄系統,需要做session共享,否則假如在A機器登錄成功,在B機器上操作就會存在用戶未登錄情況。

2. 解決方案

因項目是springboot項目,采用Springboot+Springsession+Redis來實現session共享。

2.1 pom.xml文件

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

2.2 springboot中開啟session支持

springboot啟動類添加@EnableRedisHttpSession標簽來開啟spring session支持,代碼:

@EnableRedisHttpSession
@SpringBootApplication
public class SptestApplication {
    public static void main(String[] args) {
    
        SpringApplication.run(SptestApplication.class, args);
    }
}

2.3 配置文件中增加配置項

在application.properties中增加配置項

spring.redis.host=10.192.168.13
spring.redis.port=6379

其他還有幾個配置項,不影響使用,不詳說了,需要了解的可以查看API。



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM