강의

멘토링

로드맵

NEW
개발 · 프로그래밍

/

웹 개발

카카오 면접관(개발자)이 알려주는 MSA 관점에서의 분산 트랜잭션 패턴

분산 환경에서 데이터 일관성을 유지하기 위한 SAGA 트랜잭션 관리 기법을 실습 중심으로 학습합니다. Spring Boot와 Docker를 활용해 3개의 마이크로서비스를 구성하고, Orchestration과 Choreography 두 가지 패턴을 Kafka와 MySQL로 구현합니다. 이 강의를 통해 분산 트랜잭션의 동작 원리, 보상 트랜잭션 설계, 장애 복구 처리 등 실무에서 바로 활용 가능한 핵심 개념을 익힐 수 있습니다.

76명 이 수강하고 있어요.

  • Hong
실습 중심
백엔드이해하기
자격증
시험
스프링
JavaSpringMySQLSpring BootMSA

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • 장애에도 끄떡없는 분산 트랜잭션 설계 비밀 공개

  • Orchestration·Choreography 패턴, 실무에서 언제 어떻게 쓸까?

  • Kafka로 구현하는 실시간 이벤트 기반 SAGA 트랜잭션

  • Spring Boot로 완성하는 안정적인 보상 트랜잭션 아키텍처

  • Docker로 직접 구축하는 마이크로서비스 트랜잭션 실습

MSA 환경에서의 ACID를 어떻게 관리하면 좋을까요?? 🤔

  • 아래에 있는 내용은 실제 대화 내용입니다.

😁 Kakao 면접관(개발자) : XX야(Hong) 분산 트랜잭션에 대해서 공부해보면 좋아. 알고있어??

😄 Hong : 그 로컬 트랜잭션이나 보장 트랜잭션 이런 개념 말하는거지??

😁 Kakao 면접관(개발자) : ㅇㅇ SAGA 패턴 말하는거야. 내가 면접관으로 활동하면서 이런거 질문 항상 하는데, 모르는 사람들이 많아서 너 생각나서 물어본거야

😄 Hong : 들어는 봤는데, 내가 코어레벨까지는 구현해보지는 않았어. 속히 말하는 Database per Service 관점까지는 들어가지는 않아서 개념만 알고있어

😁 Kakao 면접관(개발자) : 그럼 이 주제로 내가 관련해서 내용 정리하고 알려줄게 관련하여 강의도 다루어보면서 같이 진행해보자.

😄 Hong : ㅋㅋㅋㅋㅋ 좋아 그럼 나도 나중에 카카오 지원하면 꿀이네 ㅋㅋ 한번 진행해보자.

혹시 MSA 환경에서 ACID 관점을 어떻게 수행하시나요?? 🤔

수많은 서비스 애플리케이션 관계에서 Database per Service 관점을 수행하게 된다면, 이 상황에서 작업에 대한 상태 관리 그에따른 Transaction을 어떻게 보장하시나요??

그에대한 답은 SAGA 패턴에 있습니다. 하나의 작업을 수행하고 처리하기 위해서는 수많은 서비스를 통신해야하고 그 과정에서 수많은 트랜잭션이 발생하게 될 겁니다. 각각의 서비스들이 데이터베이스를 가지고 있는 관점에서 각각의 작업은 로컬 트랜잭션을 수행하고 장애상황에 대해서 보상 트랜잭션을 수행하는 패턴을 통해서 하나의 작업이 수행되게 될 겁니다. 이런 분산 트랜잭션의 기능을 어떻게 구현할 수 있는지 이 강의를 보시면서 그에따른 견해를 얻어가시기를 바라겠습니다. 🚀

이 강의의 특징

📌 실제 카카오 면접관(개발자)의 노하우와 면접 질문을 기준으로 구성된 강의

  • 실제 카카오 면접관(개발자)가 면접에서 질문을 했던 내용들을 기준으로 구성하였습니다. 단순하게 면접에 대한 답을 고정적으로 알려드리는것이 아니라 SAGA 패턴에 대한 모든 질문을 대응 할 수 있게 구성하였습니다.

📌 수많은 다이어그램, 강의 요약 및 소스코드를 통한 강의 구성

  • 단순히 말만으로 설명하는 강의가 아니라, 실제 소스코드, 다이어그램, 시퀀스그램, 추가로 강의 내용에 대한 간단한 요약본 파일도 제공해드리면서 강의 효율을 높여드립니다.


📌 주니어에서 시니어로 가는 지름길..! MSA 관점에서의 분산 트랜잭션 관리

  • MSA 환경이 어떤 문제가 있는지 그에따라서 어떻게 문제를 해결 할 수 있는지를 이 강의를 통해 확인하시면서 어떤 장점과 단점이 있는지 명확하게 배우실 수 있습니다.


이런 분들에게 추천드려요 👨‍🏫 

🎯 비전공자 개발자이지만 대용량 트래픽 설계에 도전하고 싶은 분

🎯 MSA, SAGA에 대해 들어봤지만 구체적인 설계 방법을 몰랐던 분

🎯 스타트업/대기업의 트래픽 확장성과 장애 복원력을 고민하는 백엔드 개발자

🎯 단순 마이크로서비스를 넘어, 복잡한 분산 트랜잭션을 설계하고 싶으신 개발자

같이 보면 좋은 자료 🚀 

함께 강의를 만드는 사람들 🤭

⚠️ 실력있는 개발자분들과 면접관분들의 견해를 옅볼 수 있는 기회를 놓치지마세요!

참고 사항

실습 환경

  • MySQL

    • Docker를 활용하여 구성합니다.

  • Spring, Spring Boot

    • 3.x 버전을 사용합니다 (3.2)

  • Java

    • Java(TM) SE Runtime Environment (build 17.0.12+8-LTS-286)

  • docker, docker-compose

    • Docker version 28.0.0, build f9ced58158

    • Docker Compose version 2.33.1

  • IDE

    • IntelliJ IDEA

  • OS

    • Apple M3 Air

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 마이크로서비스 간 데이터 일관성 문제로 고민하는 서버 개발자

  • 분산 트랜잭션 설계를 실무 코드로 배우고 싶은 백엔드 엔지니어

  • Kafka 기반 아키텍처를 한 단계 업그레이드하고 싶은 개발자

  • Spring Boot로 실전형 SAGA 패턴을 익히고 싶은 학습자

  • 안정적인 대규모 시스템을 설계하고 싶은 기술 리더 및 아키텍트

안녕하세요
입니다.

3,785

수강생

282

수강평

104

답변

4.6

강의 평점

18

강의

자기 소개

집에서 빈둥대다 개발에 흥미를 느껴 개발 공부를 시작하였고 현재는 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

 

제가 공부를 했던 방법과 실무에서 접하실 수 있는 여러가지 문제점들과 해결책을 여러분들에게 제공하고 싶어 지식공유자 활동을 이어나가고 있습니다.

 

강의는 오로지 저만의 지식을 통해 만들어지지 않습니다. 모든 강의는 함께하시는 분들이 계십니다.

 

지식공유자 경력

[前] 샌드박스 블록체인 개발자

[前] 넥슨 자회사 백엔드 개발자

[] 판교에서 고여가는 서버 개발자

 

인터뷰 이력

커리큘럼

전체

24개 ∙ (5시간 2분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!

얼리버드 할인 중

₩29,700

70%

₩99,000

Hong님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!