BackEnd/Spring Boot

Redis 설정

Raconer 2023. 4. 16. 23:36
728x90

Redis 설정

  1. Gradle 추가
    // Redis 사용법
    implementation 'org.springframework.boot:spring-boot-starter-data-redis:3.0.1'
  1. application.yml 설정
  spring:
        redis:
            password: root
            port: 6379
            host: localhost
            lettuce:
                pool:
                    max-active: 10
                    max-idle: 10
                    min-idle: 2
  1. Spring Boot 사용 시
    // 공통 Service로 생성
    @AllArgsConstructor
    public class RedisService {

        RedisTemplate<String, Object> redisTemplate;
        final String EVENT_STR = "Event Name";

        // Create
        public boolean insert() {
            final long now = System.currentTimeMillis();
            redisTemplate.opsForZSet().add(EVENT_STR, UUID.randomUUID().toString(), (int) now);
            return true;
        }

        // Read
        public void list() {
            Set<Object> queue = redisTemplate.opsForZSet().range(EVENT_STR, 0, 100);
            for (Object people : queue) {
                Long rank = redisTemplate.opsForZSet().rank(EVENT_STR, people);
            }
        }

    }
  1. 후기

RedisTemplate는 여러가지 Methods를 지원한다.
(RedisTemplate Document)[https://docs.spring.io/spring-data/redis/docs/current/api/org/springframework/data/redis/core/RedisTemplate.html]
여러가지 목적에 맞춰서 메소드를 사용하면 더욱 편하다

Methods Return DESC
boundGeoOps(K key) BoundGeoOperations<K,V> 지정된 키에 바인딩된 지리 공간 특정 작업 인터페이스를 반환합니다.
boundHashOps(K key) <HK,HV> BoundHashOperations<K,HK,HV> 지정된 키에 바인딩된 해시 값에 대해 수행된 작업을 반환합니다.
boundListOps(K key) BoundListOperations<K,V> 지정된 키에 바인딩된 목록 값에 대해 수행된 작업을 반환합니다.
boundSetOps(K key) BoundSetOperations<K,V> 지정된 키에 바인딩된 설정 값에 대해 수행된 작업을 반환합니다.
boundStreamOps(K key) <HK,HV> BoundStreamOperations<K,HK,HV> 지정된 키에 바인딩된 스트림에서 수행된 작업을 반환합니다.
boundValueOps(K key) BoundValueOperations<K,V> 주어진 키에 바인딩된 단순 값(또는 Redis 용어로는 문자열)에 대해 수행된 작업을 반환합니다.
boundZSetOps(K key) BoundZSetOperations<K,V> 주어진 키에 바인딩된 zset 값(정렬된 세트라고도 함)에서 수행된 작업을 반환합니다.
convertAndSend(String channel, Object message) Long 지정된 메시지를 지정된 채널에 게시합니다.
executePipelined(RedisCallback<?> action) List<Object> 파이프라인 연결에서 지정된 작업 개체를 실행하여 결과를 반환합니다.
추가 예정
728x90

'BackEnd > Spring Boot' 카테고리의 다른 글

JPA 간단 사용법  (0) 2023.04.17
Bean Life Cycle  (0) 2023.04.16
Show JPA Query Log  (0) 2023.04.16
채팅 만들기_2(chatting_room)  (0) 2023.04.16
채팅 만들기_1(basic)  (0) 2023.04.16