인프런 커뮤니티 질문&답변

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

재고시스템으로 알아보는 동시성이슈 해결방법

Redis 질문입니다

작성

·

302

0

현재 재고로직 처리하면서 redis를 사용하며

다음과 같은 로직으로 구현하려 합니다.

 

  1. 재고는 redis에 넣어둔다.

  2. Redis에서 가져올수 없는 경우, rdb에 쿼리한다.

 

이때, 만약 rdb에서 재고를 가져오는 경우 어떻게 가져올수 있을까요?

 

rdb데이터가 redis와 동기화되어 똑같이 있다면 다시 가져와 redis에 다시 넣어두면 되는데

어떻게 동기화시킬수 있나요??

 

주문이 끝날때마다 재고 rdb테이블에 insert하거나 update치면 rdb에 가해지는 부하나 재고rdb테이블의 lock으로 인한 성능저하는 redis를 쓰지 않을때와 별반 다르지 않지 않을까요??

 

답변 1

0

최상용님의 프로필 이미지
최상용
지식공유자

skehdxhd 님 안녕하세요.

Q. rdb 에서 재고를 가져오는 경우 어떻게 가져올 수 있을까요 ?

A. rdb 에 쿼리를 실행시켜 가져오면 됩니다. 설계를 어떻게 하셨는지에 따라 다르겠으나 상품아이디 1 번에 대한 재고를 가져오려면 select * from stock where id = 1 과 같은 쿼리가 될 수 있겠습니다.

Q. rdb데이터가 redis와 동기화되어 똑같이 있다면 다시 가져와 redis에 다시 넣어두면 되는데 어떻게 동기화시킬수 있나요??

A. 질문도 어떤의도인지 파악을 못했습니다. 어떤 상황이신지 저는 전혀 알지못하기때문에 질문해주신것만 보고는 어떤것을 얻고자하시는 것인지 파악을 할 수가 없었습니다. 조금 더 자세하게 설명해 주실 수 있으실까요 ?

Q. 주문이 끝날때마다 재고 rdb테이블에 insert하거나 update치면 rdb에 가해지는 부하나 재고rdb테이블의 lock으로 인한 성능저하는 redis를 쓰지 않을때와 별반 다르지 않지 않을까요??

A. 이 부분도 redis 를 어떻게 사용하신다는것인지 알수가 없기때문에 답변을 드리기는 힘들 것 같습니다.

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

질문하기