강의

멘토링

로드맵

BEST
Programming

/

Back-end

Distributed Transactions through an Order System

Learn about consistency issues encountered in MSA environments and their solutions.

(5.0) 10 reviews

216 learners

  • 169developer9973
실습 중심
분산트랜잭션
동시성이슈
MSA

Reviews from Early Learners

What you will learn!

  • MSA Environment Transaction Control

  • Distributed Transaction

Transitioning from Monolithic to MSA and Distributed Transactions

As services grow and become more complex, many companies find themselves considering a transition from traditional Monolithic architecture to Microservices Architecture (MSA). MSA is a modern architecture that ensures independence and scalability between services, enabling rapid development and deployment, as well as flexible failure response. However, this transition comes with important challenges that must be addressed. That is the issue of transaction consistency and integrity.

In a monolithic environment, transaction management was relatively simple because all processing could be performed within a single database and transaction boundary. Data from various domains such as orders, payments, and inventory were bundled into one transaction and processed consistently. However, with the transition to MSA, each domain is separated into independent services with separate databases, creating a situation where it becomes difficult to guarantee data consistency with traditional transaction processing methods.

In this lecture, we learn about how to solve transaction problems in MSA environments that cannot be resolved with single transactions, focusing on distributed transaction patterns: 2PC, TCC, and SAGA.

In particular, this course doesn't stop at simple theoretical explanations, but centers around an order service, starting from a Monolithic structure and transitioning to an MSA environment to show what problems actually occur in practice, and how these can be solved through each pattern, explained with specific flowcharts, example code, and practical application tips.

After taking the course

  • I understand the transaction issues that occur when transitioning from Monolithic to MSA.

  • You can learn about the structure, advantages and disadvantages, and considerations for applying each distributed transaction pattern.

  • You can learn design strategies for ensuring transaction consistency in real-world applications.

  • You can control concurrency using Lock.


Pre-enrollment Reference Information

Practice Environment

  • The course is explained based on MacOS. If you're using a Windows machine, you should be able to follow along for the most part as long as Docker is installed.

  • I use IntelliJ.

Prerequisites

  • Spring

  • JPA


Precautions

  • This course is not a course on building an order system, but rather a course that explores distributed transactions used in MSA environments using a very simple order system as an example.

    • For example, it does not cover features such as payment processing using payments that could be utilized for orders.


Recommended for
these people

Who is this course right for?

  • A person pondering how to ensure consistency across multiple services.

  • Someone contemplating how to manage transactions in an MSA environment

Need to know before starting?

  • Spring

  • JPA

Hello
This is

5,615

Learners

437

Reviews

306

Answers

4.8

Rating

3

Courses

안녕하세요. 지식공유자 최상용입니다.

많은 오픈소스에 기여한 경험이 있는 현직 백엔드 개발자입니다.

- Spring Data Mongo Contributor
- querydsl Contributor
- grpc-kotlin Contributor
- ksp Contributor
- mybatis Contributor

Curriculum

All

46 lectures ∙ (5hr 37min)

Published: 
Last updated: 

Reviews

All

10 reviews

5.0

10 reviews

  • 정병주님의 프로필 이미지
    정병주

    Reviews 158

    Average Rating 5.0

    5

    7% enrolled

    • JinSung Hwang님의 프로필 이미지
      JinSung Hwang

      Reviews 6

      Average Rating 5.0

      Edited

      5

      100% enrolled

      좋은 강의 만들어주셔서 감사합니다~! 분산트랜잭션에 대해서 키워드만 알고있고 내용에 대해서는 잘 모르고 있었는데, 이 강의 덕분에 많이 배울 수 있었습니다 강의에서 단순히 이론적인 내용만 다루신 게 아니라 실무에서 겪을 수 있는 상황들과 그에 따른 해결 노하우까지 함께 알려주셔서 정말 강의 잘 보게되었습니다! 실제로 어떻게 적용하면 좋을지 감이 잡혀서 좋았습니다 정말 좋은 강의 감사드립니다!!!

      • 팔꿈님의 프로필 이미지
        팔꿈

        Reviews 119

        Average Rating 5.0

        5

        18% enrolled

        • afgman4님의 프로필 이미지
          afgman4

          Reviews 13

          Average Rating 5.0

          5

          31% enrolled

          • jiheon님의 프로필 이미지
            jiheon

            Reviews 5

            Average Rating 5.0

            5

            100% enrolled

            단점: 예시가 없어 코드 잘못치면 한참 디버깅해야됨 장점 : 그 외 모든것

            $30.80

            169developer9973's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!