-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
improvement개선사항개선사항
Description
Description
- 좋아요, 조회 요청 시 정보 저장을 RDB가 아니라 Redis로 변경하도록 수정
- 좋아요, 조회는 자주 요청이 발생할 수 있는 기능
- RDB에 쓰기 요청은 부하를 많이 줌
- 요청 시 매번 RDB에 저장 저장하는 건 비효율적이라서 Redis에 저장하도록 변경하고자 함
- 레시피 목록 조회 시 좋아요수, 조회수로 정렬 시 join으로 매번 count 가져오는 게 비효율적이라 레시피 테이블 내 비정규화하고 있음
- redis에 저장하도록 하는 경우 실시간 반영이 어려움
- 민감한 정보는 아니라고 생각이 돼서 배치로 db 반영하도록 수정
- 하루에 한 번 새벽에 배치 일어나도록 적용
- recipeId와 userId 값을 조회, 좋아요 테이블에 저장 후 레시피 테이블에 합계 구해서 저장
- 내가 좋아요한 레시피 목록 조회
- RDB의 조회, 좋아요 테이블에서 좋아요한 레시피 아이디 목록 조회
- Redis의 좋아요한 레시피 아이디 목록 조회
- set 으로 구한 레시피 아이디 목록으로 레시피 목록 조회
To do
- 레시피 좋아요 요청 시 Redis에 저장되도록 수정
- 레시피 조회 요청 시 Redis에 저장되도록 수정
- 좋아요한 레시피 목록 조회 시 RDB 테이블 조회 후 Redis 조회까지 해서 아이디값으로 레시피 목록 조회하도록 수정
- 배치 처리를 위해서 멀티모듈로 변경
- 하루에 한 번 새벽에 좋아요와 조회 정보 저장하도록 배치 처리
ETC
Metadata
Metadata
Assignees
Labels
improvement개선사항개선사항