Transactionaleventlistener1 [Java]@Transactionaleventlistener 다루기 문제 상황 실제 근무 중인 곳에서 발생한 문제입니다. 엔티티를 DB에 저장한 후 외부 api를 호출하는 메서드가 있습니다. 이 메서드는 트랜잭션으로 묶여있기 때문에 외부 api 호출 시 장애가 발생하면 DB 저장 작업까지 모두 RollBack이 되었습니다. 문제는 메서드가 호출되면 DB 저장은 필수로 이루어져야 하기 때문에 RollBack 현상이 발생하면 안 된다는 것입니다. @Transactionaleventlistener이란? 메서드를 트랜잭션을 묶어서 처리하는 경우 트랜잭션이 끝나는 시점에 호출하는 이벤트 리스너입니다. 예를 들어 회원가입 후 쿠폰을 발급하는 로직이 있다고 가정했을 때, 회원가입은 정상적으로 완료되었지만 쿠폰 발급이 실패한 경우 회원가입 처리까지 rollback 되는 현상이 발생하게.. BackEnd/Java 2023. 9. 15. 이전 1 다음