准备工作:需要一台redis服务器,一台nginx服务器,两台放jar包的服务器
引入以下基本依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
</dependencies>
在yml核心配置文件中加入如下配置,redis的端口号6379是默认的,不用改,如果自定义过的话就需要配置端口号
spring:
redis:
host: 192.168.159.131
写一个controller,通过HttpServletRequest接口得到sessionID返回给前端
/**
* @author 程少雄
* @date 2023/2/15
* @apiNote user 控制器
*/
@RestController
@RequestMapping("/user")
public class UserController {
@GetMapping
public String login(HttpServletRequest request){
return "sessionID:"+request.getSession().getId();
}
}
然后用maven打成jar包
将jar包传到服务器上运行
java -jar xxxxxx.jar
启动服务后配置nginx的请求转发,分别转发到两个已经启动的boot上,此时查看redis上的数据
当然没有东西,因为还没有访问,当访问nginx对应的地址
不管怎么刷新sessionID都不会变,此时再看redis上的数据
多了一些东西,和页面上访问看到的结果相同