gmelon

  • 홈
  • 방명록
  • github
  • 스크랩

외부API 1

[플랭고] 주요/부가 로직 트랜잭션 분리하기 - TransactionalEventListener와 REQUIRES_NEW

플랭고는 친구와 함께 일정을 수정하고 장소를 추가하는 등 일정 공유 기능을 제공한다. 이때 새로운 일정에 초대되거나, 일정 초대를 수락/거절하거나 공유 중인 일정이 수정되는 등의 상황에 알림(자체 알림 목록 + 푸시)이 발송되도록 기능을 구현해두었다.기존에 알림을 발송하는 흐름은 다음과 같다. 먼저 일정 서비스에서 알림을 발송해야 하는 경우에 알림 DTO를 만들어 알림 서비스를 호출한다. 그러면 알림 서비스는 알림을 생성하고 외부 서비스인 FCM을 통해 대상 회원의 기기로 푸시 알림을 보낸다.이러한 흐름으로 알림을 발송하면 위 그림처럼 일정 -> 알림 -> 외부 서비스를 거치는 흐름 전체가 하나의 트랜잭션으로 묶이게 된다. 이런 식으로 코드를 구현하면 크게 다음과 같은 문제가 생길 수 있다고 생각했다. ..

개발 공부/Spring 2023.11.27
이전
1
다음
더보기
  • 분류 전체보기 (95)
    • 개발 공부 (32)
      • Java (6)
      • Spring (11)
      • DB (1)
      • 알고리즘 (11)
      • 기타 (3)
    • 프로젝트 (12)
      • [앱] 플랭고 (4)
      • 졸업 프로젝트 (8)
    • 스터디 (0)
      • 자바 (30)
    • 기록 (15)
      • 후기, 회고 (9)
      • SSAFYcial (5)
      • 이것저것 (1)
    • etc. (6)
      • 모각코 (6)

Tag

2024 회고, AWS 프리티어 종료, CJ올리브네트웍스 면접, 프리티어 종료, 비동기테스트, Collector groupingBy(), groupingBy(), 자바 Collector, 자바, 졸업프로젝트, 태초마을이야, 한글프로그래밍언어, groupingBy mapping, 네트워크스터디, EnableAsync, Java Collector, 2023 회고, 싸피 회고, 2024 상반기 회고, java,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

방문자수Total

  • Today :
  • Yesterday :

Copyright © AXZ Corp. All rights reserved.

티스토리툴바