آموزش آپاچی کافکا - پردازش جریانی در زمان واقعی (کلاس کارشناسی ارشد)

Apache Kafka - Real-time Stream Processing (Master Class)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: پردازش جریان‌های بلادرنگ با استفاده از Apache Kafka و Kafka Streams API - شروع به‌عنوان مبتدی تا پایان به عنوان PRO Apache Kafka Foundation و Kafka Architecture ایجاد جریان با استفاده از API‌های تولیدکننده Kafka طراحی، توسعه و آزمایش برنامه‌های پردازش جریانی بی‌درنگ با استفاده از Kafchicreamskaf St. ، DSL، API پردازنده و دقیقا یکبار پردازش در آپاچی کافکا را پخش می کند. تولید خودکار اشیاء جاوا از تعریف طرحواره JSON، سریال سازی، سریال زدایی و کار با پیام های JSON بدون رجیستری طرحواره. تولید خودکار اشیاء جاوا از تعریف طرحواره AVRO، سریال‌سازی، سریال‌زدایی و کار با پیام‌های AVRO با استفاده از رجیستری طرحواره Confluent. تست واحد و تست یکپارچه سازی برنامه Kafka Streams شما. پشتیبانی از معماری Microservices و اجرای پرس و جو تعاملی Kafka Streams. پیش نیازها: دانش برنامه نویسی با استفاده از زبان برنامه نویسی جاوا آشنایی با جاوا 8 لامبدا یک دستگاه جدید 64 بیتی ویندوز/مک/لینوکس با 4 گیگابایت رم (8 گیگابایت توصیه می شود)

این دوره نیازی به دانش قبلی در مورد آپاچی کافکا ندارد. ما دقت کافی برای توضیح همه مفاهیم ضروری و پیچیده معماری کافکا داشته ایم تا به شما کمک کنیم تا به سرعت و درک محتوای این دوره برسید.


درباره دوره

من در حال ایجاد Kafka Streams - Real-time Stream Processing هستم تا به شما کمک کنم پردازش جریان را به طور کلی درک کنید و آن دانش را در برنامه نویسی Kafka Streams به کار ببرید. این دوره بر اساس کتاب من در همین موضوع با همین عنوان است. کتاب من قبلاً منتشر شده است و در همه خرده‌فروشان آنلاین عمده به‌عنوان کتاب الکترونیکی و شومیز در دسترس است.

رویکرد من برای ایجاد این دوره، یک رویکرد پیشرو عقل سلیم برای آموزش یک موضوع پیچیده است. با استفاده از این رویکرد منحصر به فرد، من به شما کمک می کنم تا توانایی کلی خود را برای درک، درک و استدلال مفاهیمی که در این دوره توضیح می دهم به تدریج اعمال کنید.

چه کسی باید این دوره را بگذراند؟

Kafka Streams - دوره Real-time Stream Processing برای مهندسین نرم افزاری طراحی شده است که مایل به توسعه یک برنامه پردازش جریانی با استفاده از کتابخانه Kafka Streams هستند. من همچنین در حال ایجاد این دوره برای معماران داده و مهندسان داده هستم که مسئول طراحی و ساخت زیرساخت های داده محور سازمان هستند. گروه دیگری از افراد، مدیران و معمارانی هستند که مستقیماً با اجرای کافکا کار نمی کنند، اما با افرادی کار می کنند که جریان های کافکا را در سطح زمین اجرا می کنند.

نسخه کافکا مورد استفاده در دوره

این دوره از کتابخانه Kafka Streams موجود در Apache Kafka 2.x استفاده می کند. من تمام کد منبع و نمونه های استفاده شده در این دوره را بر روی توزیع منبع باز آپاچی کافکا 2.3 تست کرده ام. برخی از نمونه‌های این دوره از نسخه انجمن هم‌پیوسته کافکا نیز استفاده می‌کنند. ما از نسخه Confluent Community برای توضیح و نشان دادن عملکردهایی که فقط در پلتفرم Confluent در دسترس هستند، مانند Schema Registry و Avro Serdes استفاده خواهیم کرد.

کد منبع، IDE توسعه، ابزار ساخت، ورود به سیستم و ابزارهای تست

این دوره کاملاً نمونه محور است و من نمونه های زیادی را در کلاس ایجاد خواهم کرد. فایل های کد منبع برای همه نمونه ها در مطالب مطالعه شما گنجانده شده است.

این دوره به طور گسترده از IntelliJ IDEA به عنوان IDE ترجیحی توسعه استفاده خواهد کرد. با این حال، بر اساس تجربه قبلی خود، باید بتوانید با هر IDE دیگری که برای توسعه برنامه جاوا طراحی شده است کار کنید.

این دوره از Apache Maven به عنوان ابزار ساخت ترجیحی استفاده خواهد کرد. با این حال، بر اساس تجربه قبلی خود، باید بتوانید از هر ابزار ساخت دیگری که برای برنامه های جاوا طراحی شده است استفاده کنید.

این دوره همچنین از Log4J2 برای آموزش پیاده‌سازی لاگ استاندارد صنعتی در برنامه شما استفاده می‌کند.

ما از JUnit5 استفاده خواهیم کرد که آخرین نسخه JUnit برای اجرای Unit Test Cases است.

مثال و تمرین

مثال‌ها و تمرین‌ها مهم‌ترین ابزار برای تبدیل دانش شما به مهارت هستند. من قبلاً نمونه های زیادی را در دوره آورده ام. این دوره همچنین شامل سوالات عینی و برخی تکالیف برنامه نویسی در صورت لزوم است. این تمرین ها به شما کمک می کند تا مفاهیم خود را تأیید و بررسی کنید و یادگیری خود را برای حل مسائل برنامه نویسی به کار ببرید.


سرفصل ها و درس ها

قبل از اینکه تو شروع کنی Before you Start

  • معرفی Introduction

  • درباره دوره About the Course

  • درباره نویسنده About the Author

  • برای این دوره به چه چیزهایی نیاز دارید؟ What do you Need for this Course?

  • اشکال زدایی مشکلات و پرسیدن سوال Debugging Problems and Asking Questions

  • سوالات متداول Frequently Asked Questions

  • کد منبع و سایر منابع Source Code and Other Resources

مقدمه ای بر جریان های بلادرنگ Introduction to Real-time Streams

  • ظهور Bigdata - یک جمع بندی سریع Emergence of Bigdata - A Quick Recap

  • مفهوم جریان رویداد Conception of Event Streams

  • پخش هم‌زمان - موارد استفاده Real-time Streaming - Use Cases

  • چالش های جریانی در زمان واقعی Real-time Streaming Challenges

  • در نظر گرفتن طراحی جریان در زمان واقعی Real-time Streaming Design Consideration

  • خلاصه بخش Section Summary

وارد دنیای آپاچی کافکا شوید Enter the world of Apache Kafka

  • آپاچی کافکا چیست؟ What is Apache Kafka?

  • معماری ذخیره سازی کافکا Kafka Storage Architecture

  • معماری خوشه کافکا Kafka Cluster Architecture

  • معماری توزیع کار کافکا - قسمت 1 Kafka Work Distribution Architecture - Part 1

  • معماری توزیع کار کافکا - قسمت 2 Kafka Work Distribution Architecture - Part 2

  • خلاصه بخش Section Summary

  • خلاصه بخش Section Summary

ایجاد جریان های بلادرنگ Creating Real-time Streams

  • جریان به کافکا Streaming into Kafka

  • تولیدکنندگان کافکا - شروع سریع Kafka Producers - Quick Start

  • بخش داخلی تهیه کننده کافکا Kafka Producer Internals

  • Scaling Kafka Producer Scaling Kafka Producer

  • تهیه کنندگان پیشرفته کافکا (دقیقا یک بار) Advanced Kafka Producers (Exactly Once)

  • تهیه کننده پیشرفته کافکا (اجرای تراکنش) Advanced Kafka Producer (Implementing Transaction)

  • تهیه کننده کافکا - پروژه میکرو Kafka Producer - Micro Project

  • تهیه کننده کافکا - یادداشت پایانی و مراجع Kafka Producer - Final Note and References

وارد قسمت Stream Processing شوید Enter the Stream Processing

  • پردازش جریان در آپاچی کافکا Stream Processing in Apache Kafka

  • مصرف کننده کافکا - مقدمه عملی Kafka Consumer - Practical Introduction

  • مصرف کننده کافکا - مقیاس پذیری، تحمل خطا و ویژگی های از دست رفته Kafka Consumer - Scalability, Fault tolerance and Missing Features

  • Kafka Streams API - شروع سریع Kafka Streams API - Quick Start

  • ایجاد توپولوژی جریان Creating Streams Topology

  • پیاده سازی توپولوژی جریان Implementing Streams Topology

  • معماری کافکا استریمز Kafka Streams Architecture

  • خلاصه بخش و مراجع Section Summary and References

بنیاد برای اجرای پروژه زندگی واقعی Foundation for Real Life Project Implementations

  • مقدمه ای بر انواع و سریال سازی در کافکا Introduction to Types and Serialization in Kafka

  • طرحواره JSON به POJO برای JSON Serdes JSON Schema to POJO for JSON Serdes

  • ایجاد و استفاده از JSON Serdes Creating and Using JSON Serdes

  • طرحواره AVRO به POJO برای AVRO Serdes AVRO Schema to POJO for AVRO Serdes

  • ایجاد و استفاده از طرحواره AVRO در Producers Creating and using AVRO schema in Producers

  • ایجاد و استفاده از طرحواره AVRO در Kafka Streams Creating and using AVRO schema in Kafka Streams

  • خلاصه بخش و مراجع Section Summary and References

ایالات و فروشگاه ها States and Stores

  • درک ایالات و فروشگاه های ایالتی Understanding States and State Stores

  • ایجاد اولین فروشگاه دولتی شما Creating your First State Store

  • احتیاط با ایالات Caution with States

  • تحمل خطا فروشگاه ایالتی State Store Fault Tolerance

  • خلاصه بخش و مراجع Section Summary and References

  • خلاصه بخش و مراجع Section Summary and References

KTable - یک جریان به روز رسانی KTable - An Update Stream

  • معرفی KTable Introducing KTable

  • ایجاد اولین جریان به روز رسانی شما - KTable Creating your First Update Stream - KTable

  • ذخیره جدول و نرخ انتشار Table Caching and Emit Rates

  • معرفی GlobalKTable Introducing GlobalKTable

کل زمان واقعی Real-time Aggregates

  • محاسبه اولین مجموع شما - تعداد کلمات جاری در زمان واقعی Computing Your First Aggregate - Real-time Streaming Word Count

  • جریان مصالح - مفهوم اصلی Streaming Aggregates - Core Concept

  • KStream Aggregation با استفاده از Reduce() KStream Aggregation using Reduce()

  • KStream Aggregation با استفاده از Aggregate() KStream Aggregation using Aggregate()

  • اشتباهات رایج در تجمیع Common Mistakes in Aggregation

  • روی KTable حساب کنید Count on KTable

  • KTable Aggregation با استفاده از Aggregate() KTable Aggregation using Aggregate()

مهر زمانی و ویندوز Timestamps and Windows

  • مُهر زمان و استخراج کننده مهر زمانی Timestamps and Timestamp Extractors

  • ایجاد ویندوز نازک Creating Tumbling Windows

  • زمان پخش و دوره مهلت Stream Time and Grace Period

  • سرکوب نتایج متوسط Supressing Intermediate Results

  • ایجاد Hopping Windows Creating Hopping Windows

  • ایجاد Session Windows Creating Session Windows

پیوستن به جریان ها و جداول Joining Streams and Tables

  • پیوستن به جریان Streaming Joins

  • پیوستن KStrem به KStream دیگر Joining a KStrem to another KStream

  • پیوستن KTable به KTable دیگر Joining a KTable to another KTable

  • پیوستن KStream به KTable و GlobalKTable Joining a KStream to a KTable and GlobalKTable

  • اختلاط اتصالات با مصالح - Computing Top 3 Mixing Joins with Aggregates - Computing Top 3

  • اختلاط اتصالات با مصالح - CTR آگهی Mixing Joins with Aggregates - Advert CTR

تست برنامه Streams Testing Streams Application

  • چگونه یک برنامه پردازش جریانی را آزمایش کنیم How to test a Stream Processing Application

  • واحد تست توپولوژی شما Unit Testing Your Topology

پرسش های تعاملی و پاسخ های میکرو سرویس در کافکا Interactive Query and Micro-Service Responses in Kafka

  • معرفی خدمات میکرو مورد نیاز Introducing Micro-services Requirement

  • آشنایی با فروشگاه محلی در مقابل Remote State Understanding Local Vs Remote State Store

  • اجرای میکرو سرویس پرس و جو تعاملی در کافکا Implementing Interactive Query Micro-service in Kafka

ضمیمه Appendix

  • راه اندازی محیط توسعه آپاچی کافکا Setting up Apache Kafka Development Environment

به یادگیری ادامه دهید Keep Learning

  • کلمه پایانی Final Word

  • سخنرانی جایزه: اضافی دریافت کنید Bonus Lecture : Get Extra

نمایش نظرات

آموزش آپاچی کافکا - پردازش جریانی در زمان واقعی (کلاس کارشناسی ارشد)
جزییات دوره
11 hours
78
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
13,129
4.5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Prashant Kumar Pandey Prashant Kumar Pandey

معمار ، نویسنده ، مشاور ، مربی @ Learning JournalPrashant Kumar Pandey علاقه زیادی به کمک به مردم برای یادگیری و رشد در زندگی حرفه ای خود دارد و از بین بردن شکاف بین مهارت های موجود و مورد نیاز آنها است. وی در تلاش برای تحقق این مأموریت ، نویسندگی کتاب ، انتشار مقالات فنی و ایجاد فیلم های آموزشی برای کمک به متخصصان و دانشجویان فناوری اطلاعات در صنعت است. وی با بیش از 18 سال تجربه در IT به عنوان توسعه دهنده ، معمار ، مشاور ، مربی و مربی ، با سازمان های بین المللی خدمات نرم افزار در پروژه های مختلف داده محوری و Bigdata کار کرده است. Prashant اعتقاد راسخ به یادگیری مستمر مادام العمر و رشد مهارت دارد. وی برای محبوبیت بخشیدن به یادگیری مادام العمر مادام العمر ، شروع به انتشار فیلم های آموزشی رایگان در کانال YouTube خود کرد و ایده ایجاد ژورنال یادگیری خود را تحت عنوان Learning Journal مفهوم سازی کرد. وی بنیانگذار ، نویسنده اصلی و سردبیر اصلی پورتال Learning Journal است که دوره های مختلف مهارت آموزی ، آموزش و مقالات فنی را از ابتدای سال 2018 ارائه می دهد.

Learning Journal Learning Journal

ژورنال یادگیری ، تیم کوچکی از افراد است که علاقه زیادی به کمک به دیگران برای یادگیری و رشد در کار خود دارند ، از بین بردن فاصله بین مهارت های موجود و مورد نیاز آنها. در تلاش برای انجام این ماموریت ، ما در حال نوشتن کتاب ، انتشار مقالات فنی و ایجاد فیلم های آموزشی برای کمک به متخصصان و دانشجویان فناوری اطلاعات در صنعت هستیم. با هم بیش از 40 سال تجربه در IT به عنوان توسعه دهنده ، معمار ، مشاور ، مربی و مربی داریم. ما با سازمان های بین المللی خدمات نرم افزار در پروژه های مختلف داده محوری و Bigdata کار کرده ایم. یادگیری ژورنال یک تیم معتقدین راسخ به یادگیری مستمر مادام العمر و رشد مهارت است. برای محبوب کردن اهمیت یادگیری مادام العمر ، ما شروع به انتشار فیلم های آموزشی رایگان در کانال YouTube خود کردیم. ما مفهوم یادگیری مداوم را مفهوم سازی کردیم و ژورنالی از یادگیری خود را تحت عنوان روزنامه یادگیری ایجاد کردیم. ما از ابتدای سال 2018 دوره های مختلف مهارت آموزی ، آموزش و مقالات فنی را تألیف کرده ایم.