스프링캠프 2025 [Track 1] 4. 실전! MSA 트랜잭션 개발 가이드 (김용욱)
SpringCamp 2025 · YouTube
AI 핵심 요약
서비스별 데이터베이스를 분리하면 서비스 간 쓰기에서 원자성과 격리성을 보장하기 어려워지는 문제를 다루며, 2PC에 의존하기보다 애플리케이션 수준에서 실패와 재시도를 설계하는 방법을 설명했다. 데이터 소유권을 명확히 하고, 업무상 성공을 결정하는 피벗 트랜잭션을 정해 보상 트랜잭션이나 이벤트 기반 후속 처리를 적용하도록 제안했다. 동시성 문제에는 의미적 잠금, TCC, 오프라인 락을 검토하고, 데이터 변경과 이벤트 발행에는 트랜잭션 아웃박스 패턴을 활용한다. 모든 패턴을 일괄 적용하기보다 시스템의 주요 흐름을 먼저 설계해 필요한 기법만 선택하는 것이 핵심이다.
- 각 데이터의 소유 서비스를 정하고, 변경은 해당 서비스의 API나 이벤트를 통해서만 수행한다.
- 긴 분산 작업은 보상 트랜잭션과 재시도를 고려하고, 업무상 성공을 결정하는 피벗 트랜잭션을 먼저 정한다.
- 서비스 간 동시 변경을 제어해야 한다면 의미적 잠금, TCC, 오프라인 락 등 업무에 맞는 방법을 검토한다.
- 이벤트 발행과 데이터 저장의 불일치를 줄이려면 트랜잭션 아웃박스 패턴을 활용한다.
- 네트워크 타임아웃은 실제 실패와 구분하기 어려우므로 멱등성, 요청 기록, 이벤트 버전으로 중복·역순 처리를 대비한다.
소개
🎙️ 김용욱 (삼성 SDS) 🗓️ 스프링캠프 2025 Track 1 - 4 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : https://github.com/springcamp/presentations/tree/main/SpringCamp-2025-Presentations [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/...
비슷한 학습 자료
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 1. 난 spring에서 ml 서빙을 해봤어요 (김수원)
컨퍼런스 SpringCamp 2025
🎙️ 김수원 (Sionic AI) 🗓️ 스프링캠프 2025 Track 1 - 1 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : https://github.com/springcamp/presentations/tree/main/SpringCamp-2025-Presentations [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.c...
백엔드 딥러닝 · 머신러닝
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 2. Talk 1 - 개발자 커뮤니티 (박용권, 김지헌, 이상훈)
컨퍼런스 SpringCamp 2025
🎙️ MC 박용권 (당근마켓) 🎙️ 패널 김지헌 (컬리) 🎙️ 패널 이상훈 (놀유니버스) 🗓️ 스프링캠프 2025 Track 1 - 2 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : 발표 자료가 제공되지 않는 세션입니다. [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@workerksug7409 #KSUG ...
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 3. Talk 2 - 함께 성장하기 (변정훈, 박재성, 이경일)
컨퍼런스 SpringCamp 2025
🎙️ MC 변정훈 (당근마켓) 🎙️ 패널 박재성 (우아한형제들) 🎙️ 패널 이경일 (네이버) 🗓️ 스프링캠프 2025 Track 1 - 3 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : 발표 자료가 제공되지 않는 세션입니다. [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@workerksug7409 #KSU...
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 5. Talk 3 - 기술 Talk (이동욱, 안영회, 조영호)
컨퍼런스 SpringCamp 2025
🎙️ MC 이동욱 (인프랩) 🎙️ 패널 안영회 (베터코드) 🎙️ 패널 조영호 🗓️ 스프링캠프 2025 Track 1 - 5 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : 발표 자료가 제공되지 않는 세션입니다. [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@workerksug7409 #KSUG #스프링캠...
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 6. 빅뱅 방식으로 최선의 개발하기 (김근수)
컨퍼런스 SpringCamp 2025
🎙️ 김근수 (머니무브) 🗓️ 스프링캠프 2025 Track 1 - 6 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : https://github.com/springcamp/presentations/tree/main/SpringCamp-2025-Presentations [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@w...
개발 · 프로그래밍 기타
컨퍼런스 SpringCamp 2024
스프링캠프 2024 [Track 1] 4.실전! MSA 개발 가이드 (김용욱)
컨퍼런스 SpringCamp 2024
[초급] 마이크로서비스를 개발할 때 가장 어려워하는 부분은 서비스 별로 데이터베이스를 분리한다는 점입니다. SQL JOIN을 REST API로 대체하려니 성능이 느릴 것 같고 데이터베이스의 트랜잭션 보장이 없어지니 정합성이 깨지지 않을까 걱정합니다. 마이크로서비스와 함께 API Composition, Event Sourcing, CQRS, SAGA 같은 반짝이는 기술들이 함께 소개되었지만, 실전에선 이보다는 평범한 기술을 사용하는 경우가 많습니다. 관련해서 마이크로서비스를 개발할 때의 구현 이슈를 소개하고, 실전에서는 어떻게 풀어내는지 소개합니다. 🎙️ 김용욱 (삼성 SDS) 🗓️ 스프링캠프 2024 Track 1 - 4 (2024년 05월 25일) 🧭 SETEC 컨벤션센터 📂 발표자료 : http://springcamp.ksug.org/2024/static/docs/T1S4.pdf 📺 스프링캠프 2024 영상 모두 보기 : https://youtube.com/pla...
백엔드