inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Những điều cơ bản về Redis mà mọi nhà phát triển nên biết

Cấu trúc dữ liệu chuỗi

key값에 대한 작성 컨벤션

135

gukindev4878

9 câu hỏi đã được viết

0

좋은 강의 만들어주셔서 감사합니다. 질문드리고 싶은 내용은

 

key 값은 아래 처럼 리소스 관점에서 계층 방식, 스네이크 케이스로 작성하는게 일반적인 컨벤션인가요?

 

user:email:1
user:email:{id}

user:{id}:refresh_token

 

아래 강의에서 보여주신 user:email:{id} 은 리프레쉬 토큰의 예시랑 좀 다른 패턴인데, 무슨 차이가 있을까요?

 

image.png

 

redis nosql database devops

Câu trả lời 2

0

gukindev4878

참고) 레디스 네이밍 컨벤션

1. https://medium.com/nerd-for-tech/unveiling-the-art-of-redis-key-naming-best-practices-6e20f3839e4a

 

  1. https://youtu.be/BuYfhzJrBTo?si=nRg2B92G9gjvRNys

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. gukin.dev님.

Redis에서 키 패턴은 데이터의 관리와 접근 효율성을 높이기 위해 매우 중요합니다. 말씀하신 키 값 구조는 실제로 많은 개발자들이 사용하는 일반적인 컨벤션 중 하나입니다.

  1. 리소스관점의 계층방식: user:email:{id}, user:{id}:refresh_token 같은 패턴은 데이터가 어떤 리소스와 연관되어 있는지를 직관적으로 표현합니다. 이러한 구조는 데이터를 이해하고 관리하기 쉽게 만들어 주며, 특히 협업 환경에서 다른 개발자가 데이터의 형태를 빠르게 파악할 수 있도록 도와줍니다.

  2. 스네이크 케이스: 주로 키를 읽기 쉽게 하기 위한 방법으로 사용됩니다. 파이썬이나 다른 언어의 변수 네이밍 컨벤션처럼 가독성을 높이는 역할을 합니다.

  3. 사용 사례의 구분: user:email:{id}user:{id}:refresh_token의 차이는, 저장된 데이터 유형의 차이에서 옵니다. 첫 번째는 이메일과 관련된 키, 두 번째는 토큰 관련 키로, 이는 데이터가 사용되는 방식을 기준으로 구분하는 좋은 예시입니다.

따라서, 데이터나 복잡한 구조를 Redis에 저장할 때는 이러한 패턴을 활용하면 데이터의 조회 및 관리가 효율적입니다. 실제로 어떤 패턴을 사용할지는 프로젝트의 요구사항 및 팀의 합의에 따라 다를 수 있으며, 일반적으로 일관성을 유지하는 것이 가장 중요합니다.

아래의 링크는 Redis 키 설계에 관한 유사한 질문을 다루고 있으니, 더 깊이 있는 이해를 원하시면 참고하세요:
- Redis Key Naming Best Practices - 일반적인 Redis 키 네이밍 패턴과 예시

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

hayexn

주신 링크 404 오류 뜹니다

Docker + Spring Boot CI/CD 방법

0

5

1

gateway 생성 후 접속 확인 질문

0

8

1

순위가 동률일 때의 처리에 대해 질문드립니다.

0

16

2

Ingress 생성하기 ingressclass 질문

1

23

2

deployment 업데이트 및 롤백 실행하기 -2

1

24

2

강의 듣는 중인데,

0

24

1

36강 오탈자가 있는 거 같습니다.

0

21

2

Service Create/Update Record 운용과 Delete Record 미운용의 차이 질문

0

20

1

조회속도 개선에서 더 개선하는 방법이 궁금합니다.

0

28

2

라우팅 테이블 설정 중 궁금한게 있습니다.

0

34

1

user-service jwt

0

32

2

젠킨스버전과 플러그인설치

1

37

2

실무에서 Redis에서 0번 이외의 DB를 사용하나요?

0

149

2

실무에서의 복잡한 쿼리 결과 캐싱 전략(크기, TTL 등) 관련 질문

0

84

2

레디스 서버 구성

0

71

2

Redis Pub/Sub, Stream과 Kafka 비교 질문입니다.

0

309

2

채팅 서비스 관련하여 질문드립니다.

0

96

3

레디스에 저장하는 토큰 질문입니다.

0

74

2

redis 개발 환경 수정 시 질문 입니다.

0

90

2

수업 자료는 어디 있을까요?

0

150

2

상품의 재고 변경을 비동기로 처리하는것에 대해 질문합니다.

0

194

2

혹시 kafka나 rabbitMQ 강좌 예정 없으신가요?

0

194

1

MacOS에서 brew를 사용한 설치를 권장하지 않는 이유가 무엇인가요?

0

232

2

레디스 pub/sub 질문

0

280

1