آموزش ساخت سیستم های توزیع شده مدرن با جاوا

Building Modern Distributed Systems with Java

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: آموزش طراحی سیستم های توزیع شده در مقیاس بزرگ با پایگاه های داده NoSQL، صف های پیام رسانی و هماهنگی خوشه طراحی و پیاده سازی برنامه های کاربردی توزیع شده در سطح جهانی، مقیاس پذیر و قابل تحمل خطا درک الگوریتم ها و تکنیک های رایج مورد استفاده در اکثر پایگاه های داده NoSQL و پلت فرم های جریان دانش عمیق خدمات Apache Cassandra، Apache Kafka و ETCD Build توزیع شده برای کوتاه کردن URL پیش نیازها:تسلط به زبان برنامه نویسی جاوا ذهن باز برای کشف چالش های محاسبات توزیع شده مبتدی در چارچوب Spring Boot

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

در این دوره آموزشی با چالش‌های رایجی که هنگام طراحی و پیاده‌سازی سیستم‌های توزیع‌شده در مقیاس بزرگ ظاهر می‌شوند و نحوه حل این مشکلات شرکت‌های فناوری بزرگ آشنا خواهید شد.

تکنولوژی ها، الگوریتم ها و الگوهای طراحی تحت پوشش این دوره:

  • رجیستری خدمات و کشف، مش خدمات

  • Apache Cassandra

  • ETCD (مدیر هماهنگ کننده خوشه های Kubernetes)

  • آپاچی کافکا

  • طراحی سرویس بدون قدرت، منطق را دوباره امتحان کنید

  • اشتراک گذاری و هش مداوم

  • تعادل بار سمت مشتری، ردیابی توزیع شده، استقرار قناری، الگوی کناری، مدار شکن

دوره به شما اصول طراحی سیستم‌های توزیع‌شده مختلف را آموزش می‌دهد، به عنوان مثال بدون استاد در مقابل رهبران، مبتنی بر نظرسنجی در مقابل فشار محور، فوری در مقابل سازگاری نهایی. پس از تکمیل دوره، یادگیری فناوری پایگاه داده توزیع‌شده جدید آسان‌تر خواهد بود، زیرا تکنیک‌های رایج مورد استفاده مجدد، از جمله مزایا و معایب آنها را می‌شناسید.

هدف من این است که محتوای دوره را با نمونه‌های کد فراوان و بهترین روش‌ها کاربردی نگه دارم. به عنوان مثال، من خدمات Registry و Discovery را با جزئیات پوشش خواهم داد، که شما می دانید چگونه چارچوب خود را در بالای ETCD پیاده سازی کنید. در طول دوره، ما قصد داریم سرویس کوتاه کردن URL توزیع شده را بسازیم.

این دوره ممکن است خلاصه خوبی برای افرادی باشد که برای مصاحبه طراحی سیستم آماده می شوند.


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

مفاهیم سیستم های توزیع شده Concepts of Distributed Systems

  • تکامل معماری سیستم های کامپیوتری Evolution of computer system’s architecture

  • چالش های محاسبات توزیع شده Challenges of distributed computing

  • مورد استفاده از برنامه دوره Use-case of course application

  • تمرین 1 Practice 1

تماس رویه از راه دور Remote Procedure Call

  • نیاز به ارتباط The need of communication

  • انتقال و قالب پیام Message transport and format

  • الگوهای ارتباطی همزمان و ناهمزمان Synchronous and asynchronous communication patterns

  • متعادل کننده های بار سنتی Traditional load balancers

  • ثبت خدمات و کشف Service Registry and Discovery

  • مش های سرویس Service meshes

  • طراحی خدمات بی قدرت Idempotent service design

  • تمرین 2 Practice 2

پایگاه های داده توزیع شده Distributed Databases

  • سیستم های سنتی RDBMS در مقابل NoSQL Traditional RDBMS systems vs. NoSQL

  • اشتراک گذاری داده ها و هش کردن مداوم Data sharding and consistent hashing

  • قضیه CAP CAP theorem

  • معرفی کوتاه آپاچی کاساندرا Short introduction to Apache Cassandra

  • تمرین 3 Practice 3

هماهنگی خوشه ای Cluster Coordination

  • نیاز به هماهنگی در کل خوشه The need of cluster-wide coordination

  • الگوریتم اجماع RAFT RAFT consensus algorithm

  • معرفی کوتاه Etcd Short introduction to Etcd

  • اجرای موتکس توزیع شده Implementation of distributed mutex

  • الگوی طراحی انتخابات رهبر Leader election design pattern

  • الزامات استقرار برای سیستم های توزیع شده کاملاً سازگار Deployment requirements for strongly consistent distributed systems

  • خواص اسید در سیستم توزیع شده ACID properties in distributed system

  • تمرین 4 Practice 4

سیستم های پیام رسانی توزیع شده Distributed Messaging Systems

  • الگوی ارتباط ناهمزمان و میان افزار پیام گرا Asynchronous communication pattern and message-oriented middleware

  • معرفی کوتاه آپاچی کافکا Short introduction to Apache Kafka

  • آپاچی کافکا به عنوان یک سیستم توزیع شده Apache Kafka as a distributed system

  • معماری رویداد محور Event-driven architecture

  • تمرین 5 Practice 5

نمایش نظرات

آموزش ساخت سیستم های توزیع شده مدرن با جاوا
جزییات دوره
4 hours
30
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
882
4.1 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Lukasz Antoniak Lukasz Antoniak

معمار فناوری اطلاعات | اوراکل سابق | IBM سابق | اچ پی سابق