Web 로그인 세션
Spring Boot 세션 처리 과정
분산 환경에서의 세션 처리
분산 환경에서의 세션 처리 - Redis 사용
Spring에서 Redis 사용
implementation("org.springframework.session:spring-session-data-redis")
application.yml
spring:
redis:
session:
storage-type: redis
설정해주고
@RestController
public class SessionTest {
@GetMapping("/login")
public String login(HttpSession httpSession, @RequestParam String name){
httpSession.setAttribute("name",name);
return "세션아아디 저장 완료";
}
@GetMapping("/myName")
public String myName(HttpSession httpSession) {
return httpSession.getAttribute("name").toString();
}
}
원리는 간단!
Redis에 이런 형태로 저장됨 !
Key: spring:session:sessions:세션ID
Value: 직렬화된 HttpSession 데이터
name을 John을 넣은다면
Key: spring:session:sessions:세션ID
Value: {name=John, ...} (직렬화된 형태)