티스토리 뷰
백기선님의 스프링 부트 강좌 중 Redis 정리 및 내용 추가
키/밸류 스토어로 사용하는 예제
Redis?
캐시, 메시지 브로커, 키/밸류 스토어 등으로 사용 가능
Redis 설치 (docker 이용)
docker redis 설치
docker run -p 6379:6379 --name redis_db -d redis
docker redis-cli 실행
docker exec -i -t redis_db redis-cli
spring-boot-starter-data-redis 사용
springboot redis 의존성 추가
spring-boot-starter-data-redis
기본적으로 Redis를 사용하는 2가지 방법
- StringRedisTemplate(String에 특화) 또는 RedisTemplate
- extends CrudRepository (spring data 최상위 repository interface 중 하나)
1. StringRedisTemplate 사용
redis-cli를 이용하여 확인
keys * : 저장된 전체 키 확인. 실제 운영환경에서는 금지하는 명령어이다. redis가 싱글쓰레드로 운영되기 때문에, 데이터가 많다면 해당 명령어를 통해 조회하는 동안 레디스가 다른 일을 하지 못함. scan으로 대체해서 사용할 수 있다.
get key를 통해서 key의 value값 확인
2. CrudRepository 사용
@RedisHash anotation을 추가하여 redis에 hashMap 타입으로 데이터 저장
Repository 생성
jpa사용하듯이 사용
redis-cli를 이용하여 확인
hash는 get명령어로 조회할 수 없기 때문에 hget 명령어를 사용.
hget hashkey field
ex)
127.0.0.1:6379> hget accounts:318a885c-65c8-46d5-a517-31858702b79b mail
"055055@mail.com"
전체 entity 값 확인하려면 hgetall 명령어 사용
hgetall hashkey
ex)
127.0.0.1:6379> hgetall accounts:318a885c-65c8-46d5-a517-31858702b79b
1) "_class"
2) "com.example.vue.entitiy.Account"
3) "id"
4) "318a885c-65c8-46d5-a517-31858702b79b"
5) "username"
6) "055055"
7) "mail"
8) "055055@mail.com"
redis-cli 명령어
CLIENT LIST | 클라이언트 목록 조회 |
DEL | 키 삭제 |
DUMP | 키의 값 덤프 |
EXISTS | 키 존재 여부 |
FLUSHALL | 모두 비우기 |
GET★ | 키의 값 조회 |
INFO | 레디스 정보 조회 |
KEY | 패턴을 만족하는 키의 값 조회 |
KEYS | |
SET★ | 키-값 설정 |
출처 : https://zetawiki.com/wiki/Redis_%EB%AA%85%EB%A0%B9%EC%96%B4
'jvm언어관련 > Spring(SpringBoot)' 카테고리의 다른 글
Feign(페인) 클라이언트 사용 (0) | 2020.09.12 |
---|---|
springboot redis (cache) 사용 (0) | 2020.01.24 |
restdocs XPath사용 (0) | 2019.12.09 |
IoC Container /BeanFactory /ApplicationContext (0) | 2019.09.14 |
HttpMessageConverters (0) | 2019.07.14 |
- Total
- Today
- Yesterday
- 슬랙 /
- update query mutiple row
- MSSQL
- springboot https
- 업데이트 쿼리
- gradle
- visual studio code
- update set multiple
- 이펙티브자바
- 다중 업데이트
- update query multi row
- 슬랙봇
- SpringBoot
- 싱글턴
- 뱅크샐러드 유전자
- 이것이 자바다
- 몽고DB 완벽가이드
- 뱅셀 유전자
- effectivejava
- 슬랙
- Slack
- vue.js
- update query set multiple
- spring-boot-starter-data-redis
- update set multi
- 그레이들
- 뱅크샐러드
- multiple row update
- update query
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |