[Spring] synchronized 키워드를 활용한 동시성 문제 해결 & 한계
동시성 처리 웹 서비스를 개발하다보면 수많은 종류의 동시성 문제를 경험해볼 수 있다 주문 도메인 상품 재고 동시성 처리 선착순 쿠폰 동시성 처리 … 동시성 문제는 공유 자원을 동시에 접근하는 과정에서 Critical Section에서 발생하는 Race Condition으로 인한 문제를 의미한다 본 포스팅에서는 JVM 환경에서 제공하는 synchronized 키워드를 사용하여 동시성을 제어하고 한계에 대해 설명할 예정이다 Process? Thread? synchronized 키워드에 대해 알아보기전에 먼저 Process와 Thread의 개념부터 알아보자 idea64.exe는 디스크에 저장된 실행 가능한 코드와 관련 데이터 파일로 구성된 프로그램이다 이 idea64.exe를 더블클릭하게 되면 디스크에 존재하..