Spring 트랜잭션 이벤트 처리와 트랜잭션 정합성, @TransactionalEventListener
·
Server/Spring&Spring Boot
들어가며이벤트 발행 시, 트랜잭션을 어떻게 처리할 것인가에 대해 고민하던 중 Spring에서 트랜잭션 처리 후에 이벤트를 작동시키는 마법 같은 클래스가 있다는 것을 알게 되었습니다.이에 해당 어노테이션이 무엇인지, 어떤 역할을 하는지 파악하려합니다.먼저, 이벤트가 무엇인지 정의 및 설명하며 시작하겠습니다.Event란?시스템에서 발생한 의미 있는 사건 또는 상태 변화를 뜻합니다.‘사용자 가입 완료’, ‘주문 생성’, ‘상품 재고 부족’등이 이벤트라고 불릴 수 있습니다. 즉, 이벤트는 특정 비즈니스 프로세스가 완료되거나 중요한 상태 변경이 일어났음을 나타냅니다. (예: '회원가입이라는 비즈니스 프로세스가 성공적으로 완료되었다'). 이벤트는 다음과 같은 정보들을 포함합니다.발생한 사실: 어떤 일이 발생했는가?..