SpringBoot+Redis解决Nginx的session共享问题
注意:前提是实现了redis功能下进行增加
1.增加redis的session包
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
2.在properties配置文件中加入此配置
#指定使用redis进行session的操作,目前只支持redis
spring.session.store-type=redis
#还可以设置session超时时间,时间为s
spring.session.timeout=30
3.开启redis存储session,在启动类上加入此注解@EnableRedisHttpSession
@EnableRedisHttpSession
@SpringBootApplication
public class XianyuApplication {
public static void main(String[] args) {
SpringApplication.run(XianyuApplication.class, args);
}
}
配置好nginx后启动项目进行访问,在redis中就可以看到对应的session了
原理
spring-session重写了tomcat对session的相关增删改查的操作,并且使用redis来进行这些操作