728x90
Redis 설정
- Gradle 추가
// Redis 사용법
implementation 'org.springframework.boot:spring-boot-starter-data-redis:3.0.1'
- application.yml 설정
spring:
redis:
password: root
port: 6379
host: localhost
lettuce:
pool:
max-active: 10
max-idle: 10
min-idle: 2
- 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);
}
}
}
- 후기
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 |