강의

멘토링

커뮤니티

BEST
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) 21 đánh giá

361 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 workflow tool rồi đấy. Thầy vui lắm.

😁 Nhà phát triển startup : Ê, tôi nghĩ không phải vậy đâu, không phải là nói về quản lý công việc ở cấp độ client à?

😄Kakao : À Netflix Conductor kiểu như vậy à, tao 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ự tốt đấy

😄Kakao : Ừ ừ, làm cái đó thì những thứ phức tạp đều có thể xử lý bằng cách 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ại lớn thế này, làm sao biết được vậy

😁 Developer startup : Đúng vậy, ban đầu em ấy chính là newbie thuần túy mà

😄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 gì đó thì vẫn rất ổn định vì nó dựa trên event. Tuy ở công ty tôi dùng thứ khác nhưng thật sự nếu biết thì rất tốt

😄 Hong : Biết thì phải nói chứ ㅡㅡ Không phải đã quyết định đào tạo học trò sao?? Có ai muốn cùng làm cái này không

😄Kakao : Tôi thì ㄱㄱ thành thật mà nói thì 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ì vậ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, và thông qua điều này có thể triển khai business logic dưới dạng code dựa trên EDA ngay cả khi traffic tăng vọt. Hơn nữa, nếu tất cả các quy trình từ việc giám sát đến việc thử lại một cách an toàn đều được hỗ trợ thông qua một nền tảng duy nhất thì sao?? 🤷

Các phương pháp để bổ sung 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%


Vì thời gian sự kiện đã kết thúc nên chúng tôi không cung cấp tính năng này. Mong bạn thông cảm.

📌Nội dung bài giảng được bổ sung liên tục dựa trên các 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 riêng 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 để xây dựng EDA, MSA, bạn có thể học được cách sử dụng nền tảng thực tế.

📌 Nền tảng được các senior developer thực tế áp dụng và sử dụng trong công việc

* Như nội dung cuộc trò chuyện ban đầu, bạn có thể học hỏi về một 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..! System Design

* 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à các 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.

Trong khóa học này, chúng tôi đang đề cập đến những nội dung như thế này.🧩

* 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 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

Tôi khuyến nghị khóa học này 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

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

🎯 Lập trình viên backend quan tâm đến khả năng mở rộng lưu lượng truy cập và khả năng phục hồi 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 tham khảo hữu ích 🚀

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à một lập trình viên đang làm việc tại Pangyo với vai trò backend developer cho 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, là người chia sẻ kiến thức tạo ra các 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

  • Sinh viên chuyên ngành Công nghệ Thông tin tốt nghiệp từ 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 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. Xin vui lòng tham khảo thông tin này.

  • 1차 (9.7 ~ 9.11) : 70%.

  • 2차 (9.12 ~ 9.16) : 60%

  • 3차 (9.17 ~ 9.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à

3,801

Học viên

287

Đánh giá

104

Trả lời

4.6

Xếp hạng

18

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ả

21 đánh giá

5.0

21 đánh giá

  • tttos님의 프로필 이미지
    tttos

    Đánh giá 8

    Đá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á 9

    Đá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é 😊😊

  • dbghksdn922349님의 프로필 이미지
    dbghksdn922349

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    96% đã tham gia

    Tôi muốn tìm hiểu về CDC vì lý do migration và những thứ tương tự, và việc biết được các trường hợp sử dụng thực tế đã giúp ích rất nhiều. Đây là lần đầu tiên tôi nghe về temporal nhưng tôi muốn thử sử dụng nó trong môi trường production.

    • jhong
      Giảng viên

      Xin chào dbghksdn92!! Bạn sẽ không gặp khó khăn gì lớn khi sử dụng đâu 😊😊 Chúng tôi sẽ cố gắng cung cấp những bài giảng bổ ích hơn nữa cho bạn. Cảm ơn bạn.

  • dnxprbs님의 프로필 이미지
    dnxprbs

    Đánh giá 13

    Đánh giá trung bình 4.8

    5

    33% đã tham gia

    • uheejoon님의 프로필 이미지
      uheejoon

      Đánh giá 39

      Đánh giá trung bình 5.0

      5

      33% đã tham gia

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

      1.252.654 ₫

      24%

      1.670.205 ₫

      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!