강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

Tìm hiểu giao dịch phân tán qua hệ thống đặt hàng

Tìm hiểu các vấn đề nhất quán có thể gặp trong môi trường MSA và cách giải quyết.

(4.9) 17 đánh giá

281 học viên

Độ khó Cơ bản

Thời gian Không giới hạn

  • 169developer9973
MSA
MSA
MSA
MSA

Đánh giá từ những học viên đầu tiên

Đánh giá từ những học viên đầu tiên

4.9

5.0

JinSung Hwang

100% đã tham gia

Cảm ơn bạn đã tạo ra khóa học tuyệt vời~! Tôi chỉ biết từ khóa về distributed transaction mà không hiểu rõ về nội dung, nhưng nhờ khóa học này tôi đã học được rất nhiều. Trong khóa học, bạn không chỉ đề cập đến nội dung lý thuyết đơn thuần mà còn chia sẻ những tình huống có thể gặp phải trong thực tế cùng với các know-how giải quyết tương ứng, khiến tôi thực sự xem khóa học một cách thú vị! Tôi cảm thấy rất tốt vì đã nắm được cảm giác về cách áp dụng thực tế. Thực sự cảm ơn vì khóa học tuyệt vời!!!

5.0

jiheon

100% đã tham gia

Nhược điểm: Không có ví dụ nên nếu viết code sai thì phải debug rất lâu Ưu điểm: Tất cả mọi thứ khác

5.0

Jay

31% đã tham gia

Bài giảng thần thánh đáng tin cậy

Bạn sẽ nhận được điều này sau khi học.

  • Cách kiểm soát giao dịch trong môi trường MSA

  • Giao dịch phân tán

Chuyển đổi từ Monolithic sang MSA và giao dịch phân tán

Khi dịch vụ phát triển và trở nên phức tạp, nhiều doanh nghiệp bắt đầu cân nhắc việc chuyển đổi từ kiến trúc nguyên khối (Monolithic) sang kiến trúc microservice (MSA). MSA là một kiến trúc hiện đại đảm bảo tính độc lập và khả năng mở rộng giữa các dịch vụ, cho phép phát triển và triển khai nhanh chóng, cũng như ứng phó linh hoạt với các sự cố. Tuy nhiên, việc chuyển đổi này có một thách thức quan trọng cần phải được giải quyết. Đó chính là vấn đề tính nhất quán và tính toàn vẹn của giao dịch.

Trong môi trường Monolithic, việc quản lý giao dịch tương đối đơn giản vì có thể thực hiện tất cả các xử lý trong một cơ sở dữ liệu và ranh giới giao dịch duy nhất. Dữ liệu từ các domain khác nhau như đơn hàng, thanh toán, tồn kho được gói gọn trong một giao dịch và được xử lý một cách nhất quán. Tuy nhiên, khi chuyển đổi sang MSA, mỗi domain được tách thành các dịch vụ độc lập với cơ sở dữ liệu riêng biệt, dẫn đến tình huống khó có thể đảm bảo tính nhất quán dữ liệu bằng cách xử lý giao dịch truyền thống.

Trong khóa học này, chúng ta sẽ học về cách giải quyết các vấn đề giao dịch trong môi trường MSA mà không thể giải quyết bằng một giao dịch đơn lẻ, cụ thể là về các mô hình giao dịch phân tán 2PC, TCC và SAGA.

Đặc biệt, khóa học này không chỉ dừng lại ở việc giải thích lý thuyết đơn thuần, mà bắt đầu từ cấu trúc Monolithic tập trung vào dịch vụ đặt hàng, chuyển đổi sang môi trường MSA và giải thích cụ thể những vấn đề nào thực sự phát sinh, và làm thế nào có thể giải quyết chúng thông qua từng pattern với sơ đồ luồng cụ thể, mã ví dụ, và các mẹo áp dụng thực tế.

Sau khi hoàn thành khóa học

  • Tôi hiểu về các vấn đề giao dịch phát sinh khi chuyển đổi từ Monolithic sang MSA.

  • Bạn có thể hiểu được cấu trúc, ưu nhược điểm và các điểm cần lưu ý khi áp dụng từng mẫu giao dịch phân tán.

  • Bạn có thể tìm hiểu các chiến lược thiết kế để đảm bảo tính nhất quán của giao dịch trong thực tế.

  • Có thể thực hiện kiểm soát đồng thời bằng cách sử dụng Lock.


Những lưu ý trước khi học

Môi trường thực hành

  • Khóa học được giải thích dựa trên MacOS. Nếu bạn sử dụng máy Windows và đã cài đặt docker thì có thể theo dõi được hầu hết nội dung.

  • Tôi sử dụng IntelliJ.

Kiến thức tiên quyết

  • Spring

  • JPA


Lưu ý

  • Khóa học này là không phải khóa học tạo hệ thống đặt hàng mà là khóa học tìm hiểu về giao dịch phân tán được sử dụng trong môi trường MSA thông qua ví dụ về hệ thống đặt hàng rất đơn giản.

    • Ví dụ, chúng tôi không đề cập đến các tính năng như thanh toán sử dụng payments có thể được áp dụng cho đơn hàng.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người đã từng trăn trở về cách đảm bảo tính nhất quán trong môi trường có nhiều dịch vụ.

  • Người từng băn khoăn về cách quản lý giao dịch trong môi trường MSA

Cần biết trước khi bắt đầu?

  • Mùa xuân

  • JPA

Xin chào
Đây là

5,781

Học viên

464

Đánh giá

316

Trả lời

4.8

Xếp hạng

3

Các khóa học

Xin chào. Tôi là Choi Sang-yong, người chia sẻ kiến thức.

Tôi là một nhà phát triển backend hiện đang làm việc và có kinh nghiệm đóng góp cho nhiều dự án mã nguồn mở.

- Người đóng góp cho Spring Data Mongo
- Người đóng góp cho querydsl
- Người đóng góp cho grpc-kotlin
- Người đóng góp cho ksp
- Người đóng góp cho mybatis

Chương trình giảng dạy

Tất cả

46 bài giảng ∙ (5giờ 37phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

17 đánh giá

4.9

17 đánh giá

  • dudwodev님의 프로필 이미지
    dudwodev

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    61% đã tham gia

    • ison5715님의 프로필 이미지
      ison5715

      Đánh giá 46

      Đánh giá trung bình 4.9

      5

      33% đã tham gia

      • youngyongjo1618님의 프로필 이미지
        youngyongjo1618

        Đánh giá 2

        Đánh giá trung bình 5.0

        5

        74% đã tham gia

        • paulmoon008308님의 프로필 이미지
          paulmoon008308

          Đánh giá 111

          Đánh giá trung bình 4.9

          4

          20% đã tham gia

          • pos041679046님의 프로필 이미지
            pos041679046

            Đánh giá 10

            Đánh giá trung bình 5.0

            5

            100% đã tham gia

            822.112 ₫

            Khóa học khác của 169developer9973

            Hãy khám phá các khóa học khác của giảng viên!

            Khóa học tương tự

            Khám phá các khóa học khác trong cùng lĩnh vực!