Spring (1) 썸네일형 리스트형 스프링 이벤트 사용 시 트랜잭션 분리를 위해 어떤 어노테이션을 사용해야 할까? 프로젝트에서 트랜잭션 분리의 필요성을 느낀 배경 기존 중고 거래에 '경매'를 도입한 '중고 경매 거래 플랫폼' 프로젝트를 진행하게 되었습니다. 판매자가 등록한 경매 상품이 낙찰되면 낙찰자와 판매자는 1:1 채팅을 주고받을 수 있게 되고, 채팅을 통해 거래를 진행하게 됩니다. 채팅을 전송할 때 알림이 전송되지 않아 불편함을 겪는 사용자가 발생했고, 알림 기능을 추가하면서 문제가 발생했습니다. 메시지 전송 기능에 알림 기능을 도입하면서 알림 전송 실패로 인해 메시지 전송 트랜잭션이 롤백 되는 문제였습니다. 비즈니스 중요도를 고려하면 사용자 편의를 위한 부가적인 알림 기능이 메시지 전송이라는 메인 기능에 영향을 미치는 것이 부자연스럽다고 판단해 트랜잭션 분리를 고려하게 되었습니다. 먼저 서비스 코드는 다음과 .. 이전 1 다음