لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش ساخت سیستم های توزیع شده مدرن با جاوا
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
نمایش نظرات