Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Programming

/

Back-end

The Easiest and Most In-Depth Kafka Complete Guide [ By. Non-CS Major & Kakao Developer ]

We will develop a scalable order processing system capable of real-time event streaming using Spring Boot 3.x + Kotlin to build a Kafka cluster, leveraging PostgreSQL CDC with Debezium Connect and Apache Avro schema.

(4.9) 16 reviews

345 learners

  • jhong
실습 중심
백엔드이해하기
백엔드
아키텍처
스프링
Java
Spring
Kotlin
Spring Boot
Kafka

Reviews from Early Learners

What you will learn!

  • Asynchronous messaging system for publishing and consuming large-scale events using Apache Kafka Producer/Consumer

  • Stream processing system that utilizes Kafka Streams to perform real-time data filtering, window aggregation, and state store management

  • Change Data Capture System for Real-time Capturing of PostgreSQL Database Changes Using Debezium CDC

  • Data Exchange System Supporting Type-Safe Message Serialization and Schema Evolution Using Apache Avro Schema

  • Container infrastructure for integrated management of Kafka cluster, Zookeeper, PostgreSQL, and Debezium Connect using Docker Compose

  • Event-Driven Architecture for Real-time Fraud Detection, High-Value Order Filtering, and Sales Statistics Aggregation: Event-Based Business Logic

MSQ를 활용한 이벤트 기반의 아키텍처는 어떻게 사용할까?? 🤔

혹시 '메시지 큐(Message Queue)를 활용한 이벤트 기반 아키텍처(Event-Driven Architecture)'에 대해 들어보셨나요? 🤔


현대적인 백엔드 시스템의 핵심으로 자리 잡았지만, 막상 실무에 적용하려고 하면 막막하게 느껴질 수 있습니다. 수많은 데이터를 안정적으로 처리하고, 여러 서비스들을 유연하게 연결하며, 시스템 전체의 확장성을 높이는 방법! 바로 Kafka와 Kotlin을 통해 그 해답을 찾을 수 있습니다.

이 강의는 이론만 나열하는 지루한 강의나 아니라, 실제 구현하고 동작하는 과정을 함께 살펴보면서 Kafka의 핵심 기능을 완벽하게 정복하는 실전형 가이드로써 준비해 보았습니다. 🚀

이 강의의 특징

📌Java, Spring, Spring Boot, Kafka, Kotlin으로 구성이 되어 있어요.

* Java가 아닌 최신 언어 Kotlin을 사용하여 더 간결하고 안정적인 코드를 작성하는 방법을 배웁니다.

* 가장 인기있는 백엔드 프레임워크인 Spring Boot에 Kafka를 완벽하게 통합하는 노하우를 익힙니다.

📌 Docker Compose를 이용한 원클릭 실습 환경 구축하고 있어요.

* Kafka, Zookeeper, Schema R egistry, Kafka Connect 등 복잡한 데이터 플랫폼 구성요소를 명령어 하나로 손쉽게 구축합니다.

* 개발 환경 구성에 드는 시간을 아끼고, 핵심 로직 개발에만 집중할 수 있습니다.

📌 단순한 메시징을 넘어, 실무적인 데이터 파이프라인 설계

* 단순히 메시지를 보내고 받는 것을 넘어, Avro와 Schema Registry를 활용하여 데이터 스키마를 관리하고 안정적으로 데이터를 전송하는 방법을 다룹니다.

* 데이터 구조가 변경되더라도 시스템 전체가 안정적으로 운영될 수 있는 비결을 배웁니다.

📌 Kafka Streams API를 활용한 실시간 데이터 처리 및 분석

* Kafka Streams를 사용하여 별도의 클러스터 없이 실시간으로 데이터를 변환하고 집계하는 방법을 학습합니다.

* 실시간 매출 통계, 사용자 활동 분석 등 실용적인 예제를 통해 상태 저장(Stateful) 스트림 처리 기법을 익힙니다.

📌 Debezium을 이용한 CDC (Change Data Capture) 패턴 구현

* 데이터베이스의 변경을 실시간으로 감지하여 Kafka 토픽으로 스트리밍하는 CDC 패턴을 Debezium으로 구현합니다.

* 데이터베이스와 Kafka를 연동하여 이벤트 기반 아키텍처를 구축하는 핵심 기술을 마스터합니다.

이런 분들께 추천해요

백엔드 개발자

그냥 API만 작성하고 Database만 다를 줄 알아요

아키텍처 솔루션 엔지니어

프로젝트 구조와 확장성 있는 아키텍처를 구성해야해요

취업 준비생

확장성 있는 아키텍처와 구조가 궁금해요

강의에서는 이런 내용을 다루고 있어요. 🤔

  1. Producer & Consumer [ Kafka 데이터 발행과 구독 ]

  2. Topic & Partition [ 데이터 분산 저장과 병렬 처리 ]

  3. Avro & Schema Registry [ 안정적인 데이터 스키마 관리와 직렬화 ]

  4. Kafka Connect & Debezium [ DB 변경 데이터 실시간 캡처 (CDC) ]

  5. Kafka Streams API [ 실시간 데이터 스트림 처리 및 분석 ]

  6. Stateful Stream Processing [ 상태를 이용한 데이터 집계 ]

  7. Interactive Queries [ 처리 중인 실시간 데이터 조회 API ]

  8. Consumer Group & Rebalancing [ Consumer 확장과 장애 대응 ]

  9. Event-Driven Architecture [ 이벤트 기반 시스템 설계 ]

  10. 다양한 예제 다이어그램 [ 36개 가량의 다이어그램이 포함 ]


Kafka를 왜 배워야 하지??

단순합니다! 이미 다양한 기업에서 Kafka를 활용하여 이벤트 기반의 아키텍처를 도입하고 있고, 이로인해 느슨한 결합을 구현하고 있습니다.

이 강의를 만든 사람

  • 비전공자로 시작하였고, 현재는 판교에서 플랫폼 백엔드 개발자로 근무하고 있는 개발자

  • 현실적인 개발 방식과 개발론을 알려드리는 것이 목표이고, 혼자가 아닌 주변 능력있는 지인들과 함께 강의를 만드는 지식 공유자

  • 열심히 활동한 덕분에 인프런에서 인터뷰 진행해 본 지식 공유자

이 강의에 참여한 사람

  • 인서울 대학에서 컴퓨터 공학을 전공한 전공자

  • 제 1금융권을 거쳐 현재는 카카오에서 백엔드 및 데이터 엔지니어로 개발하고 있는 개발자

  • Hong과 함께 다양한 강의를 만들고 현실적인 지식과 환경을 제공하는데 이바지하고 있는 개발자

수강 전 참고 사항

선수 지식 및 유의사항

  • java

    • java 17.0.12 2024-07-16 LTS

  • IDE

    • intelliJ

  • Docker

    • Docker version 28.0.0, build f9ced58158


같이보면 학습 효과가 10배가 되는 강의

5천억건이 넘는 금융 데이터를 처리하는 토스 개발자에게 배우는 MySQL [ By. 비전공자 & Toss 개발자 ]

  • Kafka를 사용할 떄 반드시 들어가는 Database를 어떻게 효율적으로 활용 할 수 있는지 전반적으로 모두 알려주며, Kafka를 결합하는 아키텍처를 통해 여러분들의 지식을 더 열어드립니다!

Recommended for
these people

Who is this course right for?

  • Backend developers who want to grow from junior to mid-level

  • Developers who want to gain experience in real-time service development

  • Mid-level developer who wants to grow into a senior developer

  • Job seekers who want to strengthen their portfolio

  • A developer planning a career change through expanding their technology stack

Need to know before starting?

  • It would be good to have basic knowledge of Spring.

Hello
This is

2,391

Learners

169

Reviews

73

Answers

4.5

Rating

13

Courses

자기 소개

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

 

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

 

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

 

지식공유자 경력

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

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

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

 

인터뷰 이력

Curriculum

All

27 lectures ∙ (5hr 5min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

16 reviews

4.9

16 reviews

  • ddddve님의 프로필 이미지
    ddddve

    Reviews 5

    Average Rating 5.0

    5

    33% enrolled

    Tôi đang quay bài giảng và là một developer đang làm việc tại Kakao với khá nhiều cổ phần?? Tôi cũng sử dụng Kafka rất nhiều trong công việc thực tế!! Nếu thực sự đến mức production level thì khá phức tạp và thực tế là chỉ riêng bài giảng này thôi thì có phần hơi thiếu sót 😭😭 Nhưng như đã nói trong video giới thiệu bài giảng, tôi đã quay dựa trên tiêu chí nên truyền đạt những thông tin nào cho các junior developer và developer mới vào nghề, mong các bạn hiểu điều này!! Vì vậy tôi đã tập trung quay về hướng học tập, giới thiệu tổng quan về Kafka này và các bài thực hành triển khai. - Nếu lấy ví dụ trong thực tế, thì có những phần như điều kiện commit offset, các pattern ngăn chặn việc bỏ sót tiêu thụ event như DLQ!! Dù vậy tôi đã cấu trúc bài giảng để có thể giúp ích nhiều nhất cho các bạn, nên mong các bạn học về Kafka thông qua bài giảng này một cách dễ hiểu nhất, sâu sắc và nhanh chóng. Mong nhận được nhiều quan tâm! Cảm ơn các bạn!!

    • jhong
      Instructor

      Lần này cũng cảm ơn anh đã giúp đỡ như vậy!! Chắc anh bận lắm 😭😭 Em cũng biết ơn nên tuần này em dậy lúc 3-4 giờ sáng mỗi ngày để quay phim!! Hãy cùng nhau tạo ra những bài giảng bổ ích hơn nữa nhé 😊😊

  • kask814587762님의 프로필 이미지
    kask814587762

    Reviews 3

    Average Rating 5.0

    5

    96% enrolled

    Tôi được giao vai trò triển khai kafka trong công ty, và tôi cảm thấy đã học được rất nhiều thứ thông qua khóa học này. Đây có vẻ là một khóa học hoàn hảo được cấu trúc để có thể trải nghiệm từ mô hình sản xuất tiêu thụ đơn giản đến các cách sử dụng đa dạng hơn.

    • jhong
      Instructor

      Xin chào bạn 우당탕탕! Công ty bạn đang triển khai kafka đấy!! Đây là bằng chứng cho thấy dịch vụ đang ngày càng phát triển 😊😊 Chúc mừng bạn :) Như bạn đã đề cập, đây là khóa học được chuẩn bị với chủ đề về các cách sử dụng đa dạng. Hy vọng sẽ giúp ích rất nhiều cho bạn. Tôi sẽ chuẩn bị những khóa học bổ ích hơn nữa trong tương lai. Cảm ơn bạn :)

  • eightee724277님의 프로필 이미지
    eightee724277

    Reviews 4

    Average Rating 5.0

    5

    96% enrolled

    Đúng như tiêu đề, tôi nghĩ đây là một khóa học tuyệt vời giúp học Kafka một cách thực sự dễ dàng và nhanh chóng. Có thể học từ các khái niệm chung đến cách ứng dụng thực tế, và trong thời gian ngắn đã hiểu rõ Kafka là gì một cách rất cụ thể. Cảm ơn bạn.

    • jhong
      Instructor

      Xin chào bạn số 8! Cảm ơn bạn đã để lại đánh giá tốt. 😆 Tôi sẽ cố gắng để có thể cung cấp những khóa học tốt hơn nữa trong tương lai. Chúc bạn có một ngày tốt lành :)

  • kju626095386님의 프로필 이미지
    kju626095386

    Reviews 7

    Average Rating 5.0

    5

    93% enrolled

    Thay vì tập trung vào việc triển khai các tính năng cụ thể, tôi cảm thấy đây là một khóa học giúp có được cái nhìn thực sự rộng lớn về chính Kafka. Mặc dù có những phần học về Kafka một cách tổng quát, nhưng vì cũng đề cập đến các phần như kiến trúc, nên tôi có cảm giác tầm nhìn của mình được mở rộng. Cảm ơn vì khóa học tuyệt vời này.

    • jhong
      Instructor

      Xin chào, cảm ơn bạn ju đã để lại đánh giá. Tôi sẽ cố gắng để có thể tạo ra những khóa học tốt hơn nữa!! Thời tiết nóng nực, hãy chú ý sức khỏe nhé :)

  • jukas5985 [DEL] 250815201525님의 프로필 이미지
    jukas5985 [DEL] 250815201525

    Reviews 14

    Average Rating 4.9

    5

    96% enrolled

    Đây là một khóa học tập trung chắc chắn hơn vào Kafka thay vì tập trung vào Java & Spring. Thành thật mà nói, với mức giá này mà có thể biết được những cách ứng dụng đa dạng và tài liệu về Kafka như vậy thì thực sự cảm thấy rất đáng giá. Tất nhiên phần client level có vẻ hơi thiếu sót một chút, nhưng vì thầy liên tục nhấn mạnh rằng đã tập trung vào Kafka nên tôi nghĩ phần này sẽ không thành vấn đề. Cảm ơn thầy vì khóa học hay 😊

    • jhong
      Instructor

      Xin chào gohans, cảm ơn bạn đã để lại đánh giá. Như bạn đã nói, khóa học này tập trung vào các tính năng và khái niệm đa dạng của kafka hơn là client. Client thực tế sẽ được cấu thành bởi logic business phức tạp hơn. Vì vậy, tôi sẽ rất biết ơn nếu bạn hiểu rằng khóa học này giúp định hướng việc học kafka 😊 Chúc bạn có một ngày tốt lành!!

$67.10

jhong's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!