인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

redbean님의 프로필 이미지

작성한 질문수

Practical Testing: 실용적인 테스트 가이드

Presentation Layer 테스트 (1)

동시청 처리 문의드립니다.

해결된 질문

작성

·

135

0

이전 강의 부터 동시성 문제에 대해서 논하셔서 문의 드립니다.
보통 서비스 구현시 최종 병목지점은 DB로 귀결되기 마련인데
과금테이블과 같이 비관적락을 이용해야 하는 경우, 캐시등을 이용이 불가하여 어쩔수 없느니 스케일업 하는 방법을 이용합니다. 마스터, 슬레이브 로 나눈다고 해도 동시성을 보장할수 없는 경우가 많은데요. 이런 경우 해결 방안으로 어떤것이 있는지 고견을 여쭙고자 합니다.

답변 1

0

박우빈님의 프로필 이미지
박우빈
지식공유자

안녕하세요, redbean 님!

맞습니다. 예시로 말씀주신 과금테이블 같은 도메인은 데이터의 정확성, 무결성이 중요하기 때문에, 데이터베이스 단에서 비관적 락을 주로 사용하는 것 같아요.
스케일업도 방법이지만, CQRS를 잘 적용하여 DB 부담을 낮추는 방향으로 같이 고려되면 좋고요.

그 외에도 다루는 도메인 특성에 따라 Redis를 사용한 분산락 같이 애플리케이션 수준의 락도 고려해볼 수 있겠습니다.

도움이 되셨기를 바랍니다.
감사합니다. 🙂

redbean님의 프로필 이미지

작성한 질문수

질문하기