목록동시성 (2)
개발자는 기록이 답이다

저는 Redis가 싱글 스레드로 동작하는데도 불구하고, 특정 명령어를 사용할때 동시성 제어가 필요있고 없고의 차이점에 명확하게 아하! 모먼트를 가질 수는 없었습니다. 이러한 고민을 해결하기 위해 Redis 명령어들이 어떻게 동작하는지 살펴보았습니다. 이번 포스팅에서는 이 주제에 대해 알아보고자 합니다. 📌 왜 GET과 SET을 같이 사용하는 것은 동시성 이슈가 발생할까?Spring Boot 프로젝트에서 Redis를 사용하다 보면, GET과 SET 명령어를 함께 사용할 때 동시성 이슈가 발생하는 경우가 있습니다. 그 이유는 Redis는 멀티플렉싱 I/O를 활용하여 여러 요청을 받으면서, 실제 요청들은 싱글 스레드로 순차적으로 처리하기 때문입니다.참고: 아래 예시에서는 GET 대신 SCARD를, SET 대..

1. 데이터 모델링쿠폰 발행 기능을 구현하기 위해 Coupon 테이블에 지금까지 발행된 쿠폰 개수(issued_quantity)를 반정규화하는 방식을 사용했습니다.CREATE TABLE coupon( id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY COMMENT '쿠폰 식별자', event_id BIGINT UNSIGNED NOT NULL COMMENT '이벤트 식별자', discount_type VARCHAR(40) NOT NULL COMMENT '정액, 정률 등', discount_rate BIGINT UNSIGNED NULL COMMENT '정률 할인', d..