springBoot(20):使用Spring Session實現集羣-redis

1、session集羣的解決方案
redis

1.一、擴展指定serverspring

利用Servlet容器提供的插件功能,自定義HttpSession的建立和管理策略,並經過配置的方式替換掉默認的策略。缺點:耦合Tomcat/Jetty等Servlet容器,不能隨意更換容器。session

1.二、利用Filterapp

利用HttpServletRequestWrapper,實現本身的 getSession()方法,接管建立和管理Session數據的工做。spring-session就是經過這樣的思路實現的。ide

 

Spring Boot中spring session支持方式:spring-boot

 JDBC、MongoDB、Redis、Hazelcast、HashMap測試


2、實現spa

2.一、添加依賴插件

<!-- spring session -->
<dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session</artifactId>
</dependency>
<!--spring session 與redis應用基本環境配置,須要開啓redis後才能夠使用,否則啓動Spring boot會報錯 -->
<dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session-data-redis</artifactId>
</dependency>
<!-- redis -->
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-redis</artifactId>
</dependency>

2.二、配置application.propertiesserver

########################spring session開始################
# spring session使用存儲類型
spring.session.store-type=redis
# spring session刷新模式:默認on-save
#spring.session.redis.flush-mode=on-save
#spring.session.redis.namespace=
# session超時時間,單位秒
#server.session.timeout=30
#########################spring session結束################
#########################redis開始#########################
spring.redis.host=192.168.175.13
spring.redis.port=6379
spring.redis.password=123456
#spring.redis.database=0
#spring.redis.pool.max-active=8
#spring.redis.pool.max-idle=8
#spring.redis.pool.max-wait=-1
#spring.redis.pool.min-idle=0
#spring.redis.timeout=0
#########################redis結束#########################

2.三、測試

新建兩個應用,都按上面的配置,一個開8989端口,一個開8988端口,效果以下:

 wKiom1lcXlKBpZVAAAB_Pe3pBBI783.jpg


 wKiom1lcXnTjd_qlAABsbLYFYQc768.jpg

相關文章
相關標籤/搜索