آموزش طراحی سیستم بک‌اند Realtime با استفاده از WebSockets - آخرین آپدیت

دانلود Realtime Backend System Design with WebSockets

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: آموزش پیشرفته ساختارهای داخلی WebSockets برای ایجاد بک‌اندهای مقیاس‌پذیر، دوطرفه و آنی (Real-Time) برای بازی‌ها و برنامه‌های چت طراحی سیستم برای مقیاس‌پذیری بک‌اندهای Real-Time بررسی دقیق ساختار داخلی WebSockets نحوه عملکرد WebSockets پیاده‌سازی WebSockets روی TLS امن مقیاس‌پذیری WebSockets با استفاده از پروکسی لایه ۴ (Layer 4 Proxying) مقیاس‌پذیری WebSockets با استفاده از پروکسی لایه ۷ (Layer 7 Proxying) WebSockets در پروتکل‌های HTTP/2 و HTTP/3 ساخت اپلیکیشن چت گروهی آنی (با تمرکز بر I/O Intensive) ساخت اپلیکیشن بازی آنی (با تمرکز بر CPU Intensive) پیش نیازها: مبانی مهندسی بک‌اند (Fundamentals of Backend Engineering)

مهندسی بک‌اندهای کارآمد و مقیاس‌پذیر، یکی از لذت‌بخش‌ترین فعالیت‌های طراحی است. درک جریان‌های کاری فرانت‌اند، طراحی APIها، انتخاب پروتکل‌ها و دیتابیس‌های مناسب و تعیین الگوهای ارتباطی — چه حجم کاری متمرکز بر CPU باشد و چه I/O — همگی بخشی از این جذابیت هستند.

با این حال، چالش واقعی در طراحی اپلیکیشن‌های بک‌اند Real-time است که ارتباطات دوطرفه آزاد و لحظه‌ای را پشتیبانی کنند. بارهای کاری در بازی‌ها، چت‌ها و حتی اپلیکیشن‌های حیاتی Real-time منحصر‌به‌فرد هستند، زیرا برای عملکرد موثر به ماهیت "Push" نیاز دارند.

من چندین ماه روی طراحی این دوره وقت گذاشتم و پروتکل WebSockets را به عنوان پایه این کار انتخاب کردم. WebSockets تا به امروز گسترده‌ترین پروتکل دوطرفه است که توسط تمام کلاینت‌ها — از مرورگرها و برنامه‌های خط فرمان گرفته تا محیط‌های Node و Bun و حتی زبان‌هایی مانند C و Go — پشتیبانی می‌شود.

اگرچه پروتکل جدیدتری به نام WebTransport وجود دارد، اما هنوز به اندازه WebSockets پشتیبانی گسترده نشده و در محیط‌های واقعی تست نشده است. شاید چند سال دیگر، زمانی که WebTransport به بلوغ رسید، این دوره را به‌روزرسانی کنم.

این دوره به سه بخش اصلی تقسیم شده است:

۱. ساختار داخلی WebSockets – بررسی عمیق نحوه عملکرد پروتکل: دست‌دادن (Handshake)، مکانیزم‌های Keepalive، هدرهای فریم و نحوه رفتار آن روی TLS. همچنین درباره محدودیت‌ها بحث خواهیم کرد، زیرا معتقدم درک محدودیت‌ها به ما در ساخت اپلیکیشن‌های بهتر کمک می‌کند. هر درس شامل یک جلسه کدنویسی و یک کوییز در پایان بخش است.

۲. مقیاس‌پذیری WebSockets – رساندن دانش WebSockets به حداکثر: نحوه مقیاس‌پذیری این پروتکل روی HTTP/1.1، HTTP/2 و HTTP/3. ما پیاده‌سازی با پروکسی‌ها را در هر دو حالت Stream (لایه ۴) و Application (لایه ۷) به همراه مزایا و معایب آن‌ها بررسی می‌کنیم. هر درس شامل یک جلسه کدنویسی و یک کوییز در پایان بخش است.

۳. طراحی سیستم‌های Real-Time – پیاده‌سازی عملی تمام آموخته‌ها با طراحی دو سیستم: یک سیستم چت I/O-intensive و یک بازی CPU-intensive. من چندین طرح برای هر کدام پیشنهاد می‌دهم و یکی را برای پیاده‌سازی انتخاب می‌کنم.


پیش نیاز: مبانی مهندسی بک‌اند.

امیدوارم از این دوره لذت ببرید.


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

مقدمه Introduction

  • خوش‌آمدگویی Welcome

  • این دوره برای چه کسانی است؟ Who is this course for?

  • سرفصل‌های دوره Course Outline

  • داده‌های دوره Course Data

پایه‌های ارتباطات وب Foundations of Web Communications

  • مقدمه‌ای بر بخش ارتباطات وب Web Communications Section Introduction

  • درک مدل شبکه OSI Understanding the OSI Networking Model

  • مروری بر پروتکل کنترل انتقال (TCP) Overview of Transmission Control Protocol (TCP)

  • مروری بر پروتکل HTTP Overview of the HTTP Protocol

  • مروری بر HTTPS و TLS Overview of HTTPS and TLS

  • کوییز مبانی ارتباطات وب Web Communications Fundamentals Quiz

ساختار داخلی WebSockets WebSockets Internals

  • مقدمه‌ای بر بخش ساختار داخلی WebSockets WebSockets Internals Section Introduction

  • پروتکل WebSockets The WebSockets Protocol

  • فرآیند Handshake در WebSockets The WebSockets Handshake

  • ساختار فریم‌های WebSockets WebSockets Frame Structure

  • امنیت WebSockets (WSS) WebSockets Security (WSS)

  • استفاده از WebSockets در HTTP/2 و HTTP/3 WebSockets on HTTP/2 and HTTP/3

  • محدودیت‌های WebSockets The Limitations of WebSockets

  • کوییز ساختار داخلی WebSockets WebSockets Internals Quiz

مقیاس‌پذیری بک‌اندهای WebSockets Scaling WebSockets Backends

  • مقدمه‌ای بر بخش مقیاس‌پذیری WebSockets Scaling WebSockets Section Introduction

  • تفاوت Forward Proxy و Reverse Proxy Forward Proxy vs Reverse Proxy

  • پروکسی استریم WebSockets (لایه ۴) WebSockets Stream Proxying (Layer 4)

  • پروکسی اپلیکیشن WebSockets (لایه ۷ در h1 و h2) WebSockets Application Proxying (Layer 7 h1 & h2)

  • کوییز مقیاس‌پذیری بک‌اند Scaling Backend Quiz

سیستم‌های آنی - ساخت بک‌اند مقیاس‌پذیر چت (IO Intensive) Real-Time Systems - Building Scalable IO Intensive Chatting Backend

  • سیستم چت گروهی - چه چیزی می‌سازیم؟ Group Chat System - What Are We Building?

  • طراحی سیستم چت گروهی ۱ Group Chat System Design 1

  • طراحی سیستم چت گروهی ۲ Group Chat System Design 2

  • طراحی سیستم چت گروهی ۳ Group Chat System Design 3

  • طراحی سیستم چت گروهی ۴ Group Chat System Design 4

  • پیاده‌سازی سیستم چت Implementation - Chat System

سیستم‌های واقعی - ساخت بک‌اند مقیاس‌پذیر بازی (CPU Intensive) Real-World System - Scalable CPU Intensive Gaming Backend

  • سیستم بازی - چه چیزی می‌سازیم؟ Gaming System - What are We Building?

  • طراحی سیستم بازی آنی ۱ Real-Time Gaming System Design 1

  • طراحی سیستم بازی آنی ۲ Real-Time Gaming System Design 2

  • پیاده‌سازی سیستم بازی Implementation - Game System

جمع‌بندی Conclusion

  • خلاصه دوره و گام‌های بعدی Course Summary & Next Steps

نمایش نظرات

آموزش طراحی سیستم بک‌اند Realtime با استفاده از WebSockets
جزییات دوره
11.5 hours
31
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
3,740
4.4 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Hussein Nasser Hussein Nasser

نویسنده، مهندس نرم افزار

اسم من حسین است و مهندس نرم افزار هستم. از زمانی که عمویم اولین کتاب برنامه نویسی ام را در سال 1998 به من داد () متوجه شدم که نرم افزار علاقه من است. من وبلاگم را راه اندازی کردم و کانال یوتیوب را به عنوان یک خروجی برای صحبت در مورد نرم افزار راه اندازی کردم.

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

من همچنین در زمینه سیستم های اطلاعات جغرافیایی (یا GIS) تخصص دارم. من از سال 2005 به بسیاری از سازمان‌ها در کشورهای مختلف کمک کردم تا فناوری GIS را پیاده‌سازی کنند و برنامه‌های سفارشی را متناسب با موارد استفاده و ساده‌سازی گردش‌های کاری‌شان از سال 2005 نوشتم. دویست ویدیوی یوتیوب و آموزش نرم افزار تا به امروز در حال تماشا هستند و شروع به کردند. من از سال 2015 در Esri مهندس ساختمان فن آوری های GIS جالب هستم.