
오늘 인프런의 재고시스템으로 알아보는 동시성이슈 해결방법이란 강의 중 synchronized를 사용하여 동시성이슈를 해결하는데에서 궁금한 점이 발생했다. 참고로 이 강의에선 springboot, jpa와 함께 mysql을 연결하여 사용한다. // StockService 내 decrease 메서드, 여기서 동시성 이슈 발생 @Transactional public synchronized void decrease(Long id, Long quantity) { Stock stock = stockRepository.findById(id).orElseThrow(); stock.decrease(quantity); stockRepository.saveAndFlush(stock); } @Test public void 동..