강의

멘토링

로드맵

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

207 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?? 🤔

Nội dung này là 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ì cũng bắt đầu quan tâm đến workflow tool 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 : À bạn đang nói về cái như Netflix Conductor à, tôi hay dùng cái đó

[[SPAN_1]]😄[[/SPAN_2]][[SPAN_2]] Hong[[/SPAN_2]] : Ý 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ảm giác trừu tượng hóa gì đó, thành thật mà nói là siêu ngon luôn. Chắc không nhiều người biết mà lớn nhiều rồi, làm sao biết được vậy

[[SPAN_1]]😁[[/SPAN_2]][[SPAN_2]]Lập trình viên startup[[/SPAN_2]] : Đú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 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ự biết thì rất tốt

😄 Hong : Biết thì phải nói chứ ㅡㅡ Không phải đã quyết định nuôi dạy đệ tử sao?? Ai muốn cùng làm cái này không

😄Kakao : Tôi thì ok, thật ra nhiều người làm ở Kakao cũng không biết nhiều, 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

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

[[SPAN_1]]😁[[/SPAN_2]][[SPAN_2]]Toss[[/SPAN_2]] : Ồ cái gì thế này?? Mình xem sơ qua trang web thì thấy cái Temporal này 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 tính 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 đoạn code logic dài như thế nào??


Câu trả lời nằm ở việc điều phối workflow. Bạn 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, ngay cả khi traffic tăng vọt, bạn cũng có thể triển khai business logic bằng code dựa trên EDA. Hơn nữa, nếu tất cả các quy trình này - từ việc monitoring đến việc retry một cách an toàn - đều được hỗ trợ thông qua một platform duy nhất thì sao nhỉ?? 🤷

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 logic nghiệp vụ thành sự kiện 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ả kinh nghiệm để công khai.


Không phải là bài giảng nhàm chán chỉ liệt kê lý thuyết, mà được 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 xem xét quá trình viết và vận hành các truy vấn thực tế. 🚀

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

📌 Sự kiện cung cấp 100 coupon

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 theo 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 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 duy nhất. 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 được 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 rõ lắm 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 tệp tóm tắt ngắn gọn về nội dung bài giảng.

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

* 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 sau đâ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 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

* Message Delivery Guarantee 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

* Triển khai Kafka, workflow thông qua Spring Boot, Kotlin

* Cách tạo bảng MySQL và cấu hình 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 bản thân với thiết kế hệ thống lưu lượng truy cập lớn

🎯 Những người đã 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 sự cố của startup/doanh nghiệp lớn

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

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à một lập trình viên đang làm việc với vai trò phát triển backend nền tảng tại Pangyo

  • 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 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à nhà phát triển 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,724

Học viên

185

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

5 đánh giá

5.0

5 đánh giá

  • 미래 1인 개발자님의 프로필 이미지
    미래 1인 개발자

    Đánh giá 6

    Đánh giá trung bình 5.0

    5

    96% đã tham gia

    토스에서 서버 개발하면서 Hong이랑 최근에 MySQL 강의를 만들어 본 개발자 입니다. 마성의 남자 Hong이 또 카카오 친구를 꼬드겨서 워크플로우 강의를 만들었군요!! 제가 아는 workflow는 Airflow밖에 없었는데, 오픈소스를 활용하여 클라이언트 레벨에서도 구현 가능한 내용은 처음 보았습니다. 제 입장에서도 꽤나 유익한 주제이기 떄문에 재미있게 보았습니다. 이 강의도 많은 관심 부탁드리며 다음 강의도 많은 관심 부탁드립니다. Hong관 함께 좋은 주제 만들어 보도록 할게요.

    • Hong
      Giảng viên

      마성의 남자라니... 그게 무슨소리에요 ㅋㅋㅋㅋ 제자로써 많이 배우겠습니다. 감사합니다.

  • 우왕 개발자다님의 프로필 이미지
    우왕 개발자다

    Đánh giá 6

    Đánh giá trung bình 5.0

    5

    93% đã tham gia

    Hong과 함께 강의를 제공하는 개발자들 사이에서 유일하게 워크 플로우에 대해서 알고 사용해본 카카오에서 개발하고 있는 서버 개발자입니다~~ 그러다보니 이 강의에 가장 깊게 참여를 하게 되었는데요. 사실 Kafka나 Debezium (CDC)와 같은 아키텍처는 Hong이 이전에도 한번 다루어 보았어요. 거기에 더해서, 워크플로우 까지 도입해서 전반적인 EDA 기반의 아키텍처에서의 안전성까지 포함시키는 주제로 한번 준비를 해보았습니다. 이 강의가 여러분들에게 많은 도움이 되면 좋겠네요 ㅎㅎ 앞으로 Hong가 함께 더 유익하고 좋은 강의 제공해 드릴 수 있도록 노력하겠습니다. 이벤트도 많은 참여 부탁드리고!! 다음 강의도 기대해 주세요!! 좋은 하루 보내세용~

    • Hong
      Giảng viên

      다음에도 더 유익한 강의 같이 만들어봐요 ㅎㅎ

  • keny님의 프로필 이미지
    keny

    Đánh giá 12

    Đánh giá trung bình 5.0

    5

    93% đã tham gia

    너무 좋은 주제라고 합니다. CDC라는것도 처음들어봤고 Kafka도 사용해본적이 없는데, 이 강의를 수강한다면 사용하는데 큰 문제는 없다고 생각하고 너무 좋은 아키텍처에 대한 견해를 들을 수 있어서 많은 학습이 되었습니다. 그리고 단지 코드 작성하면 되는거 아닌가 싶었는데, 워크플로우라는 처음듣는 개념도 정말 많이 배웠네요. 좋은 강의 감사합니다.

    • Hong
      Giảng viên

      안녕하세요 keny님 좋은 평 남겨주셔서 감사합니다. 기존 Kafka강의와 MySQL강의도 다루어 보았는데, 이를 어떻게 효과적으로 활용하고 내부적으로 우리가 어떤 부분을 고민해야 하는지를 다루어 보고 싶었습니다. 많은 도움이 되셨다고 하니 기분이 좋네요..!! 좋은 하루 보내세요!!

  • su gj님의 프로필 이미지
    su gj

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    89% đã tham gia

    와 정말 너무 유익한 주제인거 같습니다... 개발을 공부하고 있는 사람으로써 일부 인턴 경험은 있는데, 어디서도 이런 주제를 접해보지는 못했습니다. 그만큼 진짜 유익하고 많은 분들이 이 강의 들으시면 진짜 배울 수 있는 강의인거 같아요... 좋은 강의 너무 감사드립니다.

    • a mi님의 프로필 이미지
      a mi

      Đánh giá 2

      Đánh giá trung bình 5.0

      5

      85% đã tham gia

      너무 좋은 내용으로 많이 배웟습니다. 이런 워크플로우라는게 참 유익하게 사용하면 좋다는게 확 와닿네요. 실력있는 강사님에게 배운다는게 확 와닿는 좋은 강의였습니다. 감사합니다.

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

      39.600 ₫

      60%

      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!