이미 구현한 Spring Session의 데이터를 Redis에 저장하는 방법에 대해서 알아볼거에요.
예제 소스가 필요하신 분은 아래 글을 참고해주세요.
build.gradle
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-redis'
implementation 'org.springframework.session:spring-session-data-redis'
}
application.yml
flush-mode: on-save (default, 호출될 때만 Redis에 기록), immediate (즉시 Redis에 기록)
namespace: 세션을 저장하는 데에 key값이 prefix라고 보시면되요. default는 spring:session입니다.
나머지 설정은 굳이 설명안해도 될 것 같아서 넘어갈게요.
spring:
redis:
host: localhost
port: 6379
session:
timeout: 600
store-type: redis
redis:
flush-mode: on-save
namespace: spring:session
redis-cli에서 아래와 같이 세션 데이터가 저장됨을 확인할 수 있어요.
세션 시간(timeout)이 만료되면 데이터베이스 자체에서 완벽히 삭제 처리합니다.
Redis는 키-값 구조의 비정형 데이터를 저장하는 메모리 기반 데이터베이스죠.
세션 데이터는 단순히 키-값 구조이기 때문에 많은 저장 메모리 용량을 요구하지 않고, 높은 속도가 중요하므로 Redis는 그야말로 세션을 저장하기에 가장 알맞는 데이터베이스라고 봅니다.
'Backend > Spring' 카테고리의 다른 글
Spring Boot Session MySQL 연동, 저장 (1) | 2019.10.16 |
---|---|
Spring Boot Session MongoDB 연동, 저장 (0) | 2019.10.16 |
Spring Boot Session 사용하기 (Bean Scope) (3) | 2019.10.16 |
Spring Boot 재시작 없이 반영 (DevTools) (0) | 2019.10.14 |
Spring Boot MongoDB 연동 (2) | 2019.10.11 |