좋아요 기능에서 왜 동시성 문제가 발생할까? 사용자가 동시에 같은 게시글에 좋아요를 누를 경우, likeCount(좋아요 수)를 올리는 update 쿼리가 동시에 실행됩니다.
이 때, 정합성 제어가 없다면 likeCount가 실제 누른 횟수보다 적게 올라가는 현상이 발생할 수 있습니다. → Race Condition ※ 기본 좋아요 기능 코드 @Transactional public void likePost(Long userId, Long postId){ if(likeRepository.existsByUserIdAndPostId(userId, postId)){ throw new IllegalArgumentException("이미 좋아요를 누른 게시글입니다."); } User user = userRepository.findById(userId).orElseThrow(); Post post = postRepository.findById(postId).orElseThrow(); Like l...
원문 링크 : 좋아요서비스, 동시성문제 해결