f-lab-edu / my-pay

0 stars 1 forks source link

부하 테스트에서 발견된 동시성 문제 해결 #26

Closed ieunji2 closed 4 months ago

ieunji2 commented 5 months ago

관련 이슈 내용입니다.

20 - 여러 트랜잭션이 기존에 동작하고 있는 영속성 컨텍스트를 공유해서 발생하는 문제로 osiv를 false로 설정해서 해결했습니다.

21 - 머니 송금 엣지케이스(A -> B, B->A 서로 간에 동시 요청) 데드락 문제는 레디슨의 멀티락 획득이 원자적이지 않아서 생기는 문제로, 락 획득 요청을 지갑 아이디 순으로 정렬해서 해결했습니다.

22 - 락의 범위를 잔액 조회 및 업데이트로 줄이고 락의 범위를 트랙잭션 경계로 잡았습니다.