您好,登錄后才能下訂單哦!
一、session集群的解決方案
1.1、擴展指定server
利用Servlet容器提供的插件功能,自定義HttpSession的創(chuàng)建和管理策略,并通過配置的方式替換掉默認的策略。缺點:耦合Tomcat/Jetty等Servlet容器,不能隨意更換容器。
1.2、利用Filter
利用HttpServletRequestWrapper,實現(xiàn)自己的 getSession()方法,接管創(chuàng)建和管理Session數(shù)據(jù)的工作。spring-session就是通過這樣的思路實現(xiàn)的。
Spring Boot中spring session支持方式:
JDBC、MongoDB、Redis、Hazelcast、HashMap
二、實現(xiàn)
2.1、添加依賴
<!-- spring session --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId> </dependency> <!--spring session 與redis應用基本環(huán)境配置,需要開啟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.2、配置application.properties
########################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.3、測試
新建兩個應用,都按上面的配置,一個開8989端口,一個開8988端口,效果如下:
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。