Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 이것이 자바다
- 코테
- CoffiesVol.02
- LV0
- GIT
- Kafka
- Redis
- LV02
- 디자인 패턴
- Lv.0
- spring boot
- 데이터 베이스
- Join
- LV.02
- SQL
- mysql
- docker
- 일정관리 프로젝트
- LV1
- 포트폴리오
- CI/CD
- LV01
- JPA
- 일정관리프로젝트
- 프로그래머스
- LV03
- S3
- Java
- 연습문제
- 알고리즘
Archives
- Today
- Total
목록2025/05/24 (1)
코드 저장소.

목차1.왜 Outbox가 필요했는가?2.Outbox 패턴이란?3.프로젝트에 적용4.후기 1.왜 Outbox가 필요했는가?기존의 프로젝트에서는 회원가입, 일정 등록 등 주요 도메인 이벤트 발생 시 ApplicationEventPublisher를 통해 비동기로 알림이나 이메일을 발송하고 있었습니다. 하지만 이 방식은 트랜잭션과 이벤트 발행 시점이 분리되어 있어 다음과 같은 문제의 소지가 있습니다.이벤트 발행 시점과 DB 트랜잭션 커밋 시점이 분리되어 있어, 데이터의 일관성이 깨질 수 있습니다.Kafka의 이벤트는 발행이 되었지만 DB 저장은 실패를 한 경우 -> 시스템간의 불일치Kafka를 직접 발행하는 구조로 바꾸더라도 KafkaTemplate.send()는 비동기 Future 기반이라 동기 트랜잭션과 연..
포폴/일정관리앱
2025. 5. 24. 15:16