3. ReactiveRedisTemplate
#
ReactiveRedisTemplate
#
- ReactiveRedisTemplate은 Spring data redis reactive의 추상화 클래스
- ReactiveRedisConnectionFactory를 통해서 RedisConnection을 주입
ReactiveRedisConnectionFactory
#
- ReactiveRedisConnectionFactory는 RedisConnection을 제공
- LettuceConnectionFactory와 JedisConnectionFactory 구현체
RedisTemplate bean
#
- RedisReactiveAutoConfiguration를 통해서 자동으로 ReactiveRedisTemplate bean 생성
- JdkSerializationRedisSerializer는 ObjectOutputStream을 이용하여 key와 value로 주어지는 object를 binary로 변환
- key, value에 대해서 String만 지원하는 ReactiveStringRedisTemplate bean도 등록
ReactiveRedisOperations
#
- ReactiveRedisConnection에 직접 접근할 수 있는 execute, executeInSession 메소드
- pub/sub 메소드
- key와 관련된 메소드
- 스크립트 메소드
- operations 접근 메소드
pub/sub
#
- convertAndSend: destination 채널로 message를 전달하고 메시지를 받은 클라이언트의 숫자를 반환
- listenToChannel: channels에 주어진 채널들을 listen하고 메시지를 Flux 형태로 전달
key 관련
#
- hasKey: EXISTS. key가 존재하는지 확인
- scan: SCAN. key들을 non-blocking으로 분할해서 순회
- delete: DELETE. key들을 삭제
- expire: EXPIRE. key에 TTL 부여
- expireAt: EXPIREAT. unix time을 기반으로 key에 TTL을 부여
- persist: PERSIST. key에 TTL 제거
- getExpire: PTTL. key의 TTL을 milliseconds로 반환
Operations
#
- opsForValue: value
- opsForList: list
- opsForSet: set
- opsForHash: hash
- opsForZSet: sorted set
- opsForStream: stream
- opsForHyperLogLog: hyperLogLog