강의

멘토링

로드맵

Inflearn brand logo image
NEW
Programming

/

Back-end

Kỹ thuật xử lý lưu lượng truy cập lớn dựa trên workflow cùng với nhà phát triển Kakao [ By. Người không chuyên ngành & Nhà phát triển Kakao ]

Lưu lượng truy cập tăng vọt, làm thế nào để chịu đựng được? Thông qua các mẫu thiết kế thực tế dựa trên EDA(Event-Driven Architecture) sử dụng Kafka, Spring, CDC, Temporal, bạn sẽ học cách tạo ra kiến trúc có khả năng chống chịu sự cố và mở rộng linh hoạt. Được giải thích dễ hiểu và rõ ràng cùng với kinh nghiệm thực tế của nhà phát triển Kakao để ngay cả những người không chuyên cũng có thể hiểu được. Khóa học thực hành tập trung xử lý tất cả trong một lần từ luồng dữ liệu thời gian thực, xử lý sự kiện đến liên kết microservice!

(5.0) 8 đánh giá

211 học viên

  • Hong
실습 중심
백엔드
백엔드이해하기
자격증
시험
Spring
Kotlin
MySQL
Kafka
EDA

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

Dịch cái này sang tiếng Việt

  • Thiết kế và Mẫu Kiến trúc Hướng sự kiện (Event-Driven Architecture - EDA)

  • Xây dựng message queue dựa trên Kafka và data pipeline bất đồng bộ

  • Change Data Capture (CDC) và chiến lược đồng bộ hóa dữ liệu thời gian thực

  • Điều phối quy trình làm việc phân tán và quản lý trạng thái sử dụng Temporal

  • Thiết kế tích hợp xử lý bất đồng bộ và microservices dựa trên Spring Boot

  • Các kỹ thuật lập trình hàm hiện đại sử dụng Kotlin

Lưu lượng truy cập đột nhiên tăng vọt.. Tải máy chủ và tất cả các module đều bị down hết rồi, phải làm sao đây?? 🤔

❗Đây là nội dung cuộc trò chuyện thực tế.❗

😄 Hong : Có phải bạn đang băn khoăn về workflow không? Bạn có biết gì không??

😁 Kakao : Ừ ừ biết rồi, ý bạn là những thứ như Airflow à?? Cuối cùng thì bây giờ cũng bắt đầu quan tâm đến công cụ workflow rồi đấy. Thầy vui lắm.

😁 Lập trình viên startup : Ê, tôi nghĩ không phải thế đâu, không phải là nói về quản lý công việc ở cấp độ client à?

😄Kakao : À Netflix Conductor kiểu vậy à, tôi hay dùng cái đó

😄 Hong : Ý tôi là gần đây tôi đang sử dụng cái đó, mà cái này thật sự tuyệt vời

😄Kakao : Ừ ừ, làm cái đó thì mấy thứ phức tạp đều có thể xử lý theo kiểu trừu tượng hóa?? thật sự là cực kỳ tuyệt vời, chắc không nhiều người biết mà lớn thế này rồi, làm sao mà biết được vậy

😁 Lập trình viên startup : Đúng vậy, ban đầu em ấy chính là newbie thuần túy

😄Kakao : Nếu dùng cái này thì dù traffic đột ngột tăng vọt do các sự kiện bất ngờ thì vẫn rất ổn định vì nó dựa trên event. Tuy công ty tôi đang dùng thứ khác nhưng thật sự biết được thì rất tốt

😄 Hong : Biết thì phải nói chứ ㅡㅡ Không phải đã hẹn sẽ dạy đệ tử sao?? Có ai muốn cùng làm cái này không

😄Kakao : Tôi thì đi thôi, thành thật mà nói nhiều người làm ở Kakao cũng không biết rõ lắm, tôi cũng thắc mắc tại sao lại không biết, vì tôi đã dùng thử nên tham gia, cũng có open source tên là Temporal

😁 Lập trình viên startup : Tôi lười nên chỉ kiểm tra tackle thôi

😁 Toss : Ồ cái gì thế này?? Mình xem sơ qua trang web thì thấy cái Temporal này cũng có vẻ thú vị đấy?? Nếu áp dụng thì có vẻ ổn, nếu làm khóa học thì mình sẽ mua xem

😄 Hong: 😆😆😆😆😆 Tôi sẽ mời bạn, hãy thử tạo một lần xem

Có phải những vấn đề kinh niên của các kiến trúc như EDA, MSA và phương pháp triển khai để đảm bảo an toàn là gì vậy?? 🤔

Chỉ đơn giản là nhận sự kiện và xử lý nó?? Quá trình này là một khái niệm mà nhiều người đã biết và đang sử dụng. Nhưng nếu sự kiện này thất bại thì sao?? Hoặc chúng ta sẽ quản lý những logic code dài như thế nào??


Câu trả lời nằm ở việc điều phối workflow. Có thể modular hóa và event hóa business logic hoặc xử lý dữ liệu, thông qua đó có thể triển khai business logic bằng code dựa trên EDA ngay cả khi traffic tăng vọt. Ngoài ra, nếu toàn bộ quá trình bao gồm cả việc monitoring và retry an toàn này đều được hỗ trợ thông qua một platform duy nhất thì sao nhỉ?? 🤷

Các phương pháp để bổ sung cho kiến trúc hiện đại dựa trên MSA, EDA và cách chuyển đổi business logic thành event cũng như quản lý an toàn, tôi và các senior developer đã cùng nhau tập hợp tất cả know-how để công khai.


Không phải là bài gi강 nhàm chán chỉ liệt kê lý thuyết, mà tôi đã chuẩn bị như một hướng dẫn thực chiến để hoàn toàn chinh phục các tính năng cốt lõi về thiết kế dựa trên workflow thông qua việc cùng nhau tìm hiểu quá trình hoạt động. 🚀

Lý do khóa học này đặc biệt

📌 Sự kiện cung cấp 100 phiếu giảm giá

Chúng tôi sẽ chọn 50 người trong số những người mua khóa học trong thời gian khuyến mãi lớn và cung cấp cho mỗi người 2 coupon giảm giá 50%

📌Nội dung bài giảng được bổ sung liên tục dựa trên câu hỏi của các bạn

Các câu hỏi mà các bạn đặt ra sẽ được liên tục bổ sung vào chương 8 để cấu thành bài giảng. Dù là câu hỏi về bài giảng hay câu hỏi không liên quan đến bài giảng, nếu các bạn đặt nhiều câu hỏi, chúng tôi sẽ lựa chọn những câu hỏi hữu ích và cung cấp thêm các chủ đề liên quan hoàn toàn miễn phí chỉ dành cho các học viên.

  • (Miễn phí) Vui lòng tham khảo nội dung lưu ý trước khi học khóa học.

Đặc điểm của khóa học này

📌 Khóa học bao gồm tất cả về MSQ(Kafka), CDC(MySQL), Temporal(workflow)

* Không chỉ đơn thuần sử dụng một nền tảng. Bằng cách kết hợp sử dụng các nền tảng bổ sung cần thiết trong việc xây dựng EDA, MSA, bạn có thể học hỏi về cách sử dụng nền tảng một cách thực tế.

📌 Nền tảng được các lập trình viên senior thực sự áp dụng và sử dụng trong công việc thực tế

* Như nội dung cuộc trò chuyện ban đầu, bạn có thể học hỏi về các nền tảng mà ngay cả các nhà phát triển làm việc tại Kakao cũng không hiểu rõ và từ đó có được những điểm khác biệt tương ứng.

📌 Khoảng 50 sơ đồ, tệp tóm tắt bài giảng cấu trúc bài giảng phong phú

* Không chỉ là bài giảng giải thích bằng lời nói đơn thuần, mà còn cung cấp mã nguồn thực tế, sơ đồ, biểu đồ trình tự, và thêm vào đó là các file tóm tắt ngắn gọn về nội dung bài giảng.

📌 Con đường tắt từ Junior đến Senior..! Thiết kế hệ thống

* Bạn sẽ học về những nhược điểm lớn của các kiến trúc đang được chú ý trong thực tế hiện tại như EDA, MSA và thiết kế để duy trì tính ổn định tương ứng.

* Khi sử dụng Database, bạn cũng sẽ học về các kỹ thuật xử lý dữ liệu thời gian thực.

Khóa học này bao gồm những nội dung như sau.🧩

* Khái niệm và tính cần thiết của đồng bộ hóa dữ liệu thời gian thực

* Mô hình CDC thông qua Kafka + Debezium

* Docker, phương pháp xây dựng môi trường bằng cách sử dụng lightweight image

* Tại sao chúng ta lại ưa chuộng Docker thay vì Virtual Machine??

* Các khái niệm cơ bản và cốt lõi của Kafka

* Khái niệm cơ bản về Producer & Consumer của Kafka

* Đảm bảo Giao hàng Tin nhắn trong Kafka

* Khái niệm cơ bản và tính cần thiết của CDC - cốt lõi của đồng bộ hóa thời gian thực

* Tại sao CDC dựa trên MySQL Binary Log lại hiệu quả

* Nền tảng triển khai CDC dựa trên Binary Log Debezium

* Workflow cho máy chủ vận hành ổn định

* Các khái niệm cốt lõi của Temporal: Workflow và Activity

* Kafka, workflow được triển khai thông qua Spring Boot, Kotlin

* Cách tạo bảng MySQL và thiết lập Kafka Connector

Chúng tôi khuyến nghị cho những người như thế này 👨‍🏫

🎯 Lập trình viên không chuyên ngành nhưng muốn thử thách với thiết kế xử lý lưu lượng truy cập lớn

🎯 Đã nghe về Kafka, CDC, Temporal nhưng không biết phương pháp thiết kế cụ thể

🎯 Nhà phát triển backend quan tâm đến khả năng mở rộng lưu lượng và khả năng phục hồi sau sự cố của startup/doanh nghiệp lớn

🎯 Vượt ra ngoài microservice đơn giản, dành cho những ai muốn học thiết kế dịch vụ ở cấp độ workflow

Tài liệu nên xem cùng 🚀

Người tạo ra khóa học này 🤭

  • Bắt đầu từ người không chuyên ngành, hiện tại là nhà phát triển đang làm việc tại Pangyo với vai trò phát triển backend nền tảng

  • Mục tiêu là chia sẻ phương pháp phát triển thực tế và lý thuyết phát triển, người chia sẻ kiến thức tạo ra khóa học cùng với những người quen có năng lực xung quanh chứ không phải một mình

  • Người chia sẻ kiến thức đã được Inflearn phỏng vấn nhờ hoạt động tích cực

  • Người tốt nghiệp chuyên ngành Công nghệ Thông tin tại các trường đại học ở Seoul

  • Đã từng làm việc tại ngân hàng hạng nhất và hiện tại là developer làm việc với vai trò backend và data engineer tại Kakao

  • Nhà phát triển đang đóng góp vào việc tạo ra các khóa học đa dạng cùng với Hong và cung cấp kiến thức cũng như môi trường thực tế

  • Tài năng quý giá duy nhất trong team này có kinh nghiệm sử dụng Workflow

Lưu ý

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

  • 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 phiên bản 2.33.1

  • IDE

    • IntelliJ IDEA

  • OS

    • Apple M3 Air

Khóa học này sẽ điều chỉnh tỷ lệ giảm giá theo thời gian để cung cấp mức giảm giá cao hơn cho những người mua sớm. Mong bạn tham khảo thông tin này.

  • 1차 (8.7 ~ 8.11) : 70%.

  • 2차 (8.12 ~ 8.16) : 60%

  • 3차 (8.17 ~ 8.20) : 50%

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

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

  • Nhà phát triển backend muốn xây dựng pipeline dữ liệu thời gian thực

  • Kỹ sư quan tâm đến tính nhất quán dữ liệu và đồng bộ hóa trong hệ thống phân tán

  • Nhà phát triển quan tâm đến thiết kế kiến trúc microservices

  • Nhà phát triển thách thức thiết kế microservices và hệ thống phân tán

  • Nhà phát triển backend đang băn khoăn về khả năng mở rộng của hệ thống xử lý lưu lượng truy cập lớn

  • Nhà phát triển muốn học cách triển khai xử lý sự kiện thời gian thực và đồng bộ hóa dữ liệu bằng cách tích hợp MySQL và Kafka

  • Sinh viên chuẩn bị việc làm và lập trình viên junior gặp khó khăn trong học tập do không học chuyên ngành

  • Lập trình viên server đang trải qua thực tế công việc với nỗi sợ hãi về kinh nghiệm thực tế còn ít ỏi

Xin chào
Đây là

2,732

Học viên

188

Đánh giá

76

Trả lời

4.5

Xếp hạng

14

Các khóa học

자기 소개

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

 

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

 

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

 

지식공유자 경력

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

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

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

 

인터뷰 이력

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

Tất cả

27 bài giảng ∙ (4giờ 51phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

8 đánh giá

5.0

8 đánh giá

  • tttos님의 프로필 이미지
    tttos

    Đánh giá 6

    Đánh giá trung bình 5.0

    5

    96% đã tham gia

    Tôi là một developer đang phát triển server tại Toss và gần đây đã cùng Hong tạo ra khóa học MySQL. Anh chàng Hong quyến rũ lại đã dụ dỗ bạn từ Kakao để tạo ra khóa học workflow này!! Workflow mà tôi biết chỉ có Airflow thôi, nhưng đây là lần đầu tiên tôi thấy nội dung có thể triển khai ở cấp độ client bằng cách sử dụng open source. Đối với tôi đây cũng là chủ đề khá hữu ích nên tôi đã xem rất thú vị. Mong mọi người quan tâm nhiều đến khóa học này và cũng mong mọi người quan tâm nhiều đến khóa học tiếp theo. Tôi sẽ cùng Hong tạo ra những chủ đề hay ho.

    • jhong
      Giảng viên

      Đàn ông quyến rũ là sao... Ý anh là gì vậy 😆😆😆😆 Với tư cách là học trò, em sẽ học hỏi nhiều. Cảm ơn anh.

  • ddddve님의 프로필 이미지
    ddddve

    Đánh giá 6

    Đánh giá trung bình 5.0

    5

    93% đã tham gia

    Tôi là một server developer đang phát triển tại Kakao, người duy nhất trong số các developer cung cấp bài giảng cùng với Hong có hiểu biết và đã sử dụng workflow~~ Chính vì vậy mà tôi đã tham gia sâu nhất vào bài giảng này. Thực ra Hong đã từng đề cập đến các kiến trúc như Kafka hay Debezium (CDC) trước đây rồi. Thêm vào đó, tôi đã chuẩn bị một chủ đề bao gồm cả việc đưa workflow vào để tăng tính an toàn trong kiến trúc tổng thể dựa trên EDA. Hy vọng bài giảng này sẽ giúp ích nhiều cho các bạn 😊😊 Chúng tôi sẽ nỗ lực để Hong có thể cùng cung cấp những bài giảng bổ ích và tốt hơn nữa cho các bạn. Mong các bạn tham gia nhiều vào event!! Và hãy mong chờ bài giảng tiếp theo nhé!! Chúc các bạn một ngày tốt lành~

    • jhong
      Giảng viên

      Lần sau chúng ta cùng tạo ra những bài giảng bổ ích hơn nữa nhé 😊😊

  • tasdo4797187님의 프로필 이미지
    tasdo4797187

    Đánh giá 5

    Đánh giá trung bình 5.0

    5

    85% đã tham gia

    Khóa học này cũng rất hữu ích. Tôi đã tiếp xúc với khá nhiều khóa học của người chia sẻ, và mỗi lần xem đều thấy phù hợp với phong cách của mình, nội dung cũng rất hữu ích và tôi nghĩ rằng trên Inflearn, anh đã tạo ra các khóa học với những chủ đề độc đáo. Cá nhân tôi, khi học các khóa Kafka, MySQL trước đây cũng có cảm giác như được nhìn thấy cả khu rừng, và trong khóa học này tuy có một số hình thức tương tự nhưng lại có thể tiếp xúc với chủ đề workflow - một chủ đề mà tôi chưa từng nghĩ tới, thật tuyệt vời. Trong việc học lập trình, tôi đang học được rất nhiều phần nên cũng rất mong chờ khóa học tiếp theo. Nhân tiện... tôi đã mua khóa học mà anh cung cấp qua sự kiện rồi nên hơi tiếc 😊😊 nhưng dù sao cũng cảm ơn anh đã tạo ra khóa học với chủ đề tuyệt vời như vậy!!!!!

    • ho6227574978님의 프로필 이미지
      ho6227574978

      Đánh giá 7

      Đánh giá trung bình 5.0

      5

      89% đã tham gia

      Đây có lẻ là bài giảng ý nghĩa nhất trong số các chủ đề tôi đã học cho đến nay. Tôi nghĩ mình đã xem rất nhiều chủ đề qua nội dung blog hay video bài giảng, nhưng khi nhìn thấy chủ đề như thế này, tôi cảm thấy như mình chỉ đang loay hoay trong cái giếng nhỏ mà thôi. Chính vì vậy mà bài giảng này có góc nhìn thực sự xuất sắc và nội dung giúp mở rộng tầm nhìn. Hy vọng rằng nhiều người sẽ tạo ra và học những bài giảng như thế này để văn hóa phát triển của chúng ta ngày càng trưởng thành hơn. Cảm ơn rất nhiều vì bài giảng tuyệt vời này.

      • kju626095386님의 프로필 이미지
        kju626095386

        Đánh giá 8

        Đánh giá trung bình 5.0

        5

        93% đã tham gia

        Thật sự đây là một chủ đề rất tuyệt vời. Đây là nội dung hoàn toàn mới mẻ với tôi và điều này... mặc dù đang có kinh nghiệm thực tế, nhưng với tôi - người chỉ từng phát triển các API thông thường, đây thực sự là một chủ đề cực kỳ bổ ích giúp tôi nhận ra thế giới rộng lớn như thế nào.. Cảm ơn bạn rất nhiều vì đã tạo ra một chủ đề tuyệt vời như vậy. Nếu nói về ưu điểm thì, chỉ từ kiến trúc này thôi cũng có thể học được rất nhiều điều lớn lao, và có thể tiếp cận khái niệm workflow - một khái niệm thực sự xa lạ như thế này với mức giá rẻ như vậy thật là tuyệt vời.

        Ưu đãi có thời hạn, kết thúc sau 5 ngày ngày

        837.038 ₫

        59%

        2.092.594 ₫

        Khóa học khác của Hong

        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!