레디스2 결제 동시성 이슈 해결 - 분산락과 Redisson 개요회사 차세대 프로젝트에서 발송 요청 시 가결제 동시성 이슈로 인한 사용자 가결제 금액 - 잔액간 불일치 이슈가 발생했다. 발생한 가결제 이슈 프로세스를 정리하면 아래와 같다. 사용자가 2건의 60원짜리 가결제 요청P1: 가결제 금액 조회 ⇒ 0원P2: 가결제 금액 조회 ⇒ 0원P1: 가결제 처리 후 commit ⇒ 사용자 가결제 금액 60원P2: 가결제 처리 후 commit ⇒ 사용자 가결제 금액 120원보유 금액 100원 이 되어 유저 잔액(-20원) 조회 시 오류 발생위 이슈는 공유 자원인 DB에 동시에 여러 프로세스가 접근하여 값을 수정하다보니 발생한 동시성 이슈인데, 해당 이슈 담당자는 이 이슈를 Redis를 활용한 분산락을 통하여 해결하였다. 이번 글에서는 DB 접근 동시성 이슈를 해결하기 .. 2024. 10. 3. [Redis] SET 값 조회 및 삭제하기 개요프로젝트 개발에서 사용하는 Redis에서 SET 타입의 Key에 1000개가 넘는 값을 저장하는 케이스가 있었다. 기능 개발 후 디버깅 중 해당 Key 내부의 값에 특정 값이 포함되는지 확인할 일이 생겼는데, Redis cli 자체적으로는 제공하지 않는 기능이라 리눅스 기능을 활용하여 해결했던 내용을 기록한다. 목적 우리는 이번 포스트에서 Redis 에 저장된 Key 중 ELECTION 이라는 Key에 저장된 값들 중 0103456이라는 값을 포함한 값들을 찾고, 만약 존재한다면 그중 특정 값을 삭제하고자 한다. 해당 목적을 기억하고 포스트를 읽으면 좀 더 도움이 될 것 같다. Redis-cli 제공 기능 SMEMBERS 명령어 Redis 에서는 SET 타입의 Key에 어떤 value들이 있는지.. 2024. 9. 27. 이전 1 다음