سلام! اسم من علی گلنلر است. من اینجا هستم تا با بکارگیری بهترین شیوهها برای چالشهای زندگی واقعی، به شما کمک کنم معماری میکروسرویسهای رویداد محور را بیاموزید.
در این دوره، شما بر روی توسعه میکروسرویس ها تمرکز خواهید کرد. با کمک میکروسرویس ها می توانید به طور مستقل اجزای برنامه خود را توسعه و استقرار دهید. همچنین میتوانید به راحتی سرویسها را با توجه به نیازهای منابع خود هر سرویس مقیاسبندی کنید، برای مثال میتوانید مقیاسبندی بهتری داشته باشید و نمونههای بیشتری از سرویسی که به درخواستهای بیشتری نیاز دارد ایجاد کنید.
در این دوره همیشه می توانید از آخرین نسخه ها برای بوت فنری، ابر فنری و سایر وابستگی ها استفاده کنید. لطفاً فقط سخنرانی های بخش آخر را دنبال کنید تا کد مورد نیاز و تغییرات پیکربندی را برای نسخه های به روز شده مشاهده کنید. همچنین اگر میخواهید در طول دوره از زیرنویس استفاده کنید، میتوانید زیرنویسها را روی ویدیوها فعال کنید زیرا همه سخنرانیها با زیرنویسهای دستنویس بهروزرسانی میشوند. پیشنهاد میکنم از زیرنویسها برای سهولت در پیگیری سخنرانیها استفاده کنید.
هنگامی که از یک برنامه یکپارچه به معماری میکروسرویس ها حرکت می کنید، در نتیجه داشتن یک برنامه و سیستم توزیع شده، چالش هایی ایجاد می شود. در این دوره یاد خواهید گرفت که چگونه با استفاده از معماری رویداد محور (EDA) با آپاچی کافکا با این چالش ها مقابله کنید.
با معماری رویداد محور؛
شما واقعاً خدمات را جدا میکنید و سرویسهای انعطافپذیر ایجاد میکنید زیرا یک سرویس ارتباط مستقیمی با سرویسهای دیگر ندارد
شما از ارتباط ناهمزمان/غیر مسدود کننده بین سرویس ها استفاده خواهید کرد
شما از فروشگاه رویداد/ایالت (کافکا) استفاده میکنید و برای مقیاسپذیری بهتر، وضعیت را از سرویسها حذف میکنید
تانیما: "این یکی از بهترین دوره هایی است که من تا به حال در udemi داشته ام، مدرس فوق العاده پاسخگو است و همیشه در طول دوره با مشکلات پیچیده برخورد می کند، بسیار متشکرم استاد من همیشه از شما برای این دوره سپاسگزار خواهم بود. منتظر انتشار دوره بعدی شما خواهد بود."
شما یک معماری میکروسرویس را از ابتدا با استفاده از جدیدترین پلتفرمهای نرمافزار، فناوریها، کتابخانهها و ابزارها، پیروی از بهترین شیوهها، استفاده از الگوهای میکروسرویس و استفاده از جاوا، Spring boot، Spring cloud، Spring Security، Kafka و Elasticsearch توسعه خواهید داد. ما همچنین خدمات منبع یابی رویداد و رویداد محور را با استفاده از Kafka به عنوان فروشگاه رویداد پوشش خواهیم داد.
الگوهای میکروسرویس هایی که پیاده سازی خواهید کرد عبارتند از:
پیکربندی خارجی با پیکربندی Spring Cloud
CQRS با جستجوی کافکا و الاستیک
نسخه Api برای نسخه سازی Rest API
ثبت خدمات و کشف با Spring Cloud و Netflix Eureka
Api Gateway با Spring Cloud Gateway
شکن مدار با Spring Cloud Gateway و Resilience4j
محدود کردن نرخ با Spring Cloud Gateway و Redis برای استفاده از Redis به عنوان محدود کننده نرخ
ردیابی توزیع شده با SLF4J MDC، Spring Cloud Sleuth و Zipkin
تجمیع گزارش با پشته ELK (Elasticsearch، Logstash و Kibana)
تعادل بار سمت کلاینت با Spring Cloud Load Balancer
پایگاه داده در هر سرویس
پیام بین میکروسرویس ها با استفاده از کافکا
شما همچنین پروتکل های Spring Security Oauth 2.0 و OpenID Connect را برای احراز هویت و مجوز با استفاده از Keycloak و JWT پیاده سازی خواهید کرد. استفاده از Oauth برای مجوز خدمات و اتصال OpenID برای احراز هویت به طور گسترده در معماری میکروسرویس ها با امنیت بوت Spring استفاده می شود.
الیور مایکلز: "دوره شگفت انگیزی که زمین های زیادی را پوشش می دهد، مانند چکمه های فنری، کافکا، الاستیک، OAuth/Keycloak، و غیره و نشان می دهد که چگونه همه این قطعات در یک معماری میکروسرویس زیبا با هم قرار می گیرند."
موضوع مهم دیگری که روی آن تمرکز خواهید کرد، نظارت بر ریزسرویس ها است. شما از محرک بوت Spring و Prometheus با میکرومتر استفاده خواهید کرد که می تواند برای دریافت معیارهایی مانند سلامت، تعداد رشته های در حال اجرا، تعداد درخواست ها، زمان پاسخگویی و میزان مصرف حافظه استفاده شود. همچنین یاد خواهید گرفت که از Grafana برای ایجاد یک داشبورد خوب برای تجسم معیارهایی که با استفاده از Spring boot actuator و Prometheus به دست آورده اید، استفاده کنید.
در حین معرفی میکروسرویسهای رویداد محور، با پوشش موضوعات کافکا، پارتیشنهای کافکا، APIهای مصرفکننده و تولیدکننده کافکا، مشتری سرپرست کافکا و پیامرسانی Avro، اصول اولیه آپاچی کافکا را درک خواهید کرد.
امره دمیر: "این فقط یک آموزش نرم افزار نیست. یک دوره پیشرفته مهندسی کامپیوتر است. مثال ها و توضیحات عالی هستند. توسعه دهندگان Full-stack و Back-end باید بگذرانند."
برای برقراری ارتباط بین میکروسرویسها، جدا از استفاده از پیامرسانی کافکا، کافکا استریمها را نیز معرفی میکنم و نحوه استفاده از Kafka Streams را برای ایجاد یک فروشگاه حالت موقت با دادههای جریان انباشته شده نشان میدهم. سپس این منبع داده موقت توسط میکروسرویس دیگری مصرف می شود.
برای برقراری ارتباط با ذخیرههای داده در میکروسرویسها، از وابستگیهای مختلف Spring Data، مانند Spring Data JPA با PostgreSQL، Spring Data Elasticsearch و Spring Kafka استفاده خواهم کرد.
برای مستندات Api، از مشخصات Open Api 3 استفاده خواهم کرد که Swagger 3.0 را پیاده سازی می کند. Open Api یک رابط RESTful برای یک API ایجاد می کند و به شما کمک می کند تا به راحتی یک Rest API را توسعه و مصرف کنید.
همچنین یاد خواهید گرفت که چگونه از Hateoas (Hypermedia به عنوان موتور حالت برنامه) در Rest Api با Spring Hateoas استفاده کنید. Hateoas پیوندهایی به منابع روی سرور ارائه می دهد و پاسخ REST API را با این پیوندها به روز می کند تا به صورت پویا با مشتری تعامل داشته باشد. این کار توسعه APIهای Rest سطح 3 را فعال می کند.
Sidhartha Mallik: "این دوره بسیار عالی است - و برای هر سطح عالی است، اکیدا توصیه می شود"
یک بخش توسعه واکنشی نیز در این دوره وجود دارد که جستجوی elasticsearch را به صورت واکنشی با Reactive Spring، WebFlux، WebClient و Reactive Thymeleaf نشان می دهد. در این بخش، نحوه استفاده از اجزای Spring Webflux و Spring Reactive را برای ایجاد یک جریان ناهمزمان بین میکروسرویس ها یاد خواهید گرفت.
شما از Spring boot و Spring cloud به همراه Docker برای توسعه میکروسرویس های آماده ابری استفاده خواهید کرد. داکر یک پلتفرم کانتینریسازی است و امکان بستهبندی برنامهها را در کانتینرها فراهم میکند. این کانتینرها می توانند بعداً در هر محیطی که داکر در حال اجرا است اجرا شود. در این دوره شما تصاویر داکری از میکروسرویس هایی که توسعه داده اید ایجاد می کنید. سپس از docker compose برای اجرای همه کانتینرهای میکروسرویس ها با هم، همراه با وابستگی های دیگر مانند Kafka، Elasticsearch، Keycloak، Redis، Prometheus، Grafana و Zipkin استفاده کنید. در پایان یک دستور «docker-compose up» برای اجرای تمام معماری میکروسرویس ها همراه با وابستگی های مورد نیاز کافی خواهد بود. داشتن این تصاویر داکر شما را قادر می سازد تا برنامه خود را به راحتی در هر فروشنده ابری مستقر کنید.
محمد O. Tillawy: "دوره شگفت انگیز، اما خود را آماده کنید، بسیار شدید، و اطلاعات بسیار زیادی نیاز به تمرکز و صبر دارد."
شما یک رویکرد عملی را دنبال میکنید و پروژهای را از ابتدا توسعه میدهید که در آن چندین میکروسرویس احاطه شده با چندین ماژول برای انجام وظایف خاص خواهید داشت. بنابراین در این دوره که من شما را از ابتدا تا انتها راهنمایی خواهم کرد، باید دستان خود را کثیف کنید. همچنین در هر بخش آزمونهای چند گزینهای برای بررسی پیشرفت خود در طول دوره پیدا خواهید کرد.
در پایان دوره نه تنها چالشهای واقعی یک برنامه کاربردی توزیعشده با چندین سرویس و مؤلفه را درک خواهید کرد، بلکه میتوانید راهحلهایی را برای این چالشها اعمال کنید.
شما می توانید کد منبع را در هر سخنرانی به طور جداگانه دانلود کنید و آنها را به راحتی با استفاده از IDE یا داکر خود اجرا کنید.
Ido Charar: "این دوره توسط علی گلنلر فوق العاده است. فقط در مورد Spring Cloud با کافکا و الاستیک نیست. این دوره به شما دانش بسیار بیشتری در مورد فناوری های مربوط به Spring Cloud به طور خاص و Cloud Computing به طور کلی می دهد. از جمله آنها فن آوری هایی مانند برنامه نویسی واکنشی، استریم، سیستم عامل لینوکس، امنیت، الگوهای طراحی و خیلی چیزهای دیگر هستند. همه اطلاعات به صورت مختصر اما قابل درک ارائه شده است که به شما امکان می دهد مهارت های خود را در کوتاه ترین زمان ممکن گسترش دهید. بسیار قدردان سرمایه گذاری در مطالب، مدرس مشارکت، کمک مداوم و کمک به دانش آموزان. به همه کسانی که می خواهند مهارت های خود را ارتقا دهند، توصیه می کنم این دوره را بگذرانند. "
برای اطلاعات دقیق تر در مورد پیشرفت این دوره، می توانید ویدیوی مقدماتی و درس های رایگان را بررسی کنید و اگر تصمیم به ثبت نام در این دوره دارید، همیشه می توانید در مورد مفاهیم و جزئیات پیاده سازی در Q/بپرسید و بحث کنید. بخش A و پیام ها من شما را از ابتدا تا انتها راهنمایی می کنم تا به شما کمک کنم دوره را با موفقیت به پایان برسانید و تا حد امکان دانش و تجربه را از این دوره به دست آورید.
نمایش نظرات