ALO
[Spring] 이벤트 처리를 위한 스케줄러 작업 조정(ShedLock 활용)
[Spring] 이벤트 처리를 위한 스케줄러 작업 조정(ShedLock 활용)
2021.09.22사용 배경 문제 인식 - 1. outbox 테이블 전체 조회로 인한 문제 - 2. scale-out 상황에서 스케줄러 작업의 중복 실행의 가능성 문제 ShedLock을 위한 프로젝트 설정 ShedLock을 이용한 스케줄링 Lock 설정 - Scale-out 상황에서 스케줄러 중복 실행에 대한 해결 전체 조회 내용을 chunk로 나누어 작업 수행 - 처음에 작은 단위로 조회해보기 - 비동기 방식으로 메일 전송 작업하기 끝나지 않은 고민 - 작업을 꼭 수행해야하는 기능에 대해서는 어떻게 구현할 것인가 📌 1. 사용 배경 프로젝트를 진행하면서 패스워드 변경 요청을 위한 Email 전송 기능이 필요해졌습니다. Email은 spring boot starter mail 라이브러리를 사용하여 테스트용도로 개발을 진행..
Outbox 패턴을 이용한 메일 발송 구현해보기
Outbox 패턴을 이용한 메일 발송 구현해보기
2021.07.08Github Repo https://github.com/beaniejoy/resetpw-outbox-scheduler Overview Eventual Consistency & Strong Consistency At Least Once? Outbox 패턴 코드 구현 📌 1. Overview 프로젝트 개발 중에 비밀번호 초기화 관련한 메일 발송 기능을 구현하는 과정이 있었습니다. 여기서 개념도 익힐겸 Eventual Consistency 고려해서 ALO(At Least Once) 방식을 적용한 메일 발송 기능을 구현해봤습니다. 📌 2. Eventual Consistency? Strong Consistency? 위 두 개의 Consistency 개념은 Multiple Replicas of a Database ..