🔔 با توجه به بهبود نسبی اینترنت، آمادهسازی دورهها آغاز شده است. به دلیل تداوم برخی اختلالات، بارگذاری دورهها ممکن است با کمی تأخیر انجام شود. مدت اشتراکهای تهیهشده محفوظ است.
لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش استفاده از gRPC در ارتباط میکروسرویسها با داتنت 5
- آخرین آپدیت
دانلود Using gRPC in Microservices Communication with .Net 5
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
یادگیری جامع ارتباطات gRPC بین میکروسرویسهای بکاند با داتنت 5
با این دوره آموزشی جامع، نحوه ساخت و پیادهسازی یک
ارتباطات gRPC بین میکروسرویسهای بکاند با عملکرد بالا با استفاده از .Net 5 و AspNet 5
را خواهید آموخت. میکروسرویسها ستون فقرات سیستمهای توزیعشده مدرن هستند و با
gRPC در ASP.NET 5، برنامههای کاربردی
چند پلتفرمی با کارایی بالا
برای ساخت سیستمهای توزیعشده و API ها خواهیم ساخت. این فناوری انتخابی ایدهآل برای
ارتباط بین میکروسرویسهای بکاند، برنامههای شبکه داخلی یا دستگاهها و سرویسهای اینترنت اشیا (IoT) است. با انتشار ASP.NET 5، مایکروسافت پشتیبانی درجه یک برای ایجاد
سرویسهای gRPC با Asp.Net 5
ارائه داده است.
این دوره شما را در مسیر شروع، ساخت، توسعه و مدیریت سرورها و کلاینتهای
gRPC
در معماری میکروسرویسهای
توزیع شده
راهنمایی میکند.
معماری کلی پروژه دوره
ما قادر خواهیم بود تا
۶ میکروسرویس
را طراحی کرده و آنها را یکی پس از دیگری توسعه دهیم. برای ساخت کامپوننتهای کلاینت و سرور gRPC که قراردادهای
تعریف سرویس proto
را مشخص میکنند، از
Worker Services
و
Asp.Net 5 Grpc Applications
استفاده خواهیم کرد.
ما یک سناریوی واقعی در
تجارت الکترونیک
را با استفاده انحصاری از ارتباط gRPC پیادهسازی خواهیم کرد. ما دارای ۳ برنامه سرور gRPC خواهیم بود:
Product
—
ShoppingCart
و
Discount
gRPC services. همچنین ۲ سرویس worker خواهیم داشت:
Product
و
ShoppingCart Worker Service. سرویسهای worker نقش کلاینت را ایفا کرده و عملیات را بر روی برنامههای سرور gRPC انجام میدهند. همچنین، ما
سرویسهای gRPC
را با میکروسرویس مستقل
Identity Server
با استفاده از توکنهای
OAuth 2.0
و
JWT
امن خواهیم کرد.
توسعه برنامههای سرور و کلاینت gRPC
ProductGrpc Server Application
اول از همه، پروژه
ProductGrpc
را توسعه خواهیم داد. این یک برنامه وب سرور gRPC مبتنی بر Asp.Net خواهد بود که API های عملیات CRUD محصول را ارائه میدهد.
Product Worker Service
پس از آن، پروژه Product Worker Service را برای
مصرف
سرویسهای ProductGrpc توسعه خواهیم داد. این پروژه سرویس worker محصول، کلاینت برنامه ProductGrpc خواهد بود و با استفاده از
سرویسهای proto gRPC client streaming برنامه ProductGrpc
، محصولات را تولید کرده و رکوردهای دستهای محصول را در پایگاه داده محصول درج میکند. این عملیات به صورت دورهای و در قالب یک برنامه سرویس اجرا خواهد شد.
ShoppingCartGrpc Server Application
سپس پروژه ShoppingCartGrpc را توسعه خواهیم داد. این یک برنامه وب
سرور gRPC
مبتنی بر Asp.Net خواهد بود که API های عملیات سبد خرید (SC) و موارد سبد خرید را ارائه میدهد. سرویسهای gRPC شامل ایجاد سبد خرید و افزودن یا حذف اقلام به سبد خرید خواهند بود.
ShoppingCart Worker Service
بعد از آن، پروژه ShoppingCart Worker Service را برای مصرف سرویسهای ShoppingCartGrpc توسعه خواهیم داد. این پروژه سرویس worker سبد خرید، کلاینت هر دو برنامه ProductGrpc و ShoppingCartGrpc خواهد بود. این سرویس worker
محصولات را از ProductGrpc میخواند و با استفاده از سرویسهای proto gRPC برنامه ProductGrpc و ShoppingCartGrpc، سبد خرید را ایجاد کرده و اقلام محصول را به آن اضافه میکند. این عملیات به صورت دورهای و در قالب یک برنامه سرویس اجرا خواهد شد.
DiscountGrpc Server Application
هنگام افزودن آیتم محصول به سبد خرید، مقدار تخفیف بازیابی شده و
قیمت نهایی
محصول محاسبه میشود. این ارتباط نیز از طریق فراخوانی gRPC بین برنامه SCGrpc و DiscountGrpc انجام خواهد شد.
امنیت و احراز هویت با gRPC
Identity Server
همچنین، ما یک
سرور احراز هویت متمرکز و مستقل
با پیادهسازی بسته
IdentityServer4
توسعه خواهیم داد و نام این میکروسرویس، Identity Server خواهد بود.
Identity Server4 یک چارچوب متن باز است که پروتکلهای
OpenId Connect
و
OAuth2
را برای .Net Core پیادهسازی میکند. با IdentityServer، میتوانیم سرویسهای سبد خرید gRPC خود را با استفاده از توکنهای OAuth 2.0 و JWT محافظت کنیم. SC Worker قبل از ارسال درخواست به برنامه سرور ShoppingCart Grpc، توکن را دریافت خواهد کرد.
در پایان این دوره، شما درک عملی از نحوه استفاده از
gRPC برای پیادهسازی سیستمهای میکروسرویس سریع و توزیعشده
خواهید داشت. همچنین یاد خواهید گرفت که چگونه سرویسهای gRPC محافظت شده را با IdentityServer در معماری میکروسرویسها ایمن کنید.
این دوره برای چه کسانی مناسب است؟
این دوره بسیار عملی است؛ حدوداً ۹۰٪+ درسها شامل کدنویسی همزمان با مدرس خواهد بود. اگر شما از آن دسته افرادی هستید که با انجام دادن بهترین یادگیری را کسب میکنید، این دوره قطعاً برای شما مناسب است.
ابزارهای مورد نیاز برای این دوره
در این دوره، تمامی درسها با استفاده از Visual Studio 2019 به عنوان ویرایشگر کد نمایش داده میشوند. البته شما میتوانید از هر ویرایشگر کد و هر سیستم عاملی که دوست دارید استفاده کنید، به شرطی که ویندوز یا مک باشد.
پیشنیازها
دانش زبان C#
دانش اولیه Aspnet Core
موضوعات کلیدی دوره:
ساخت ارتباطات gRPC بین میکروسرویسهای بکاند با عملکرد بالا با .Net
gRPC در میکروسرویسها با .Net 5
کار با Protocol Buffers با استفاده از زبان proto3 و بکارگیری انواع شناخته شده گوگل (google well-known types)
انواع متدهای gRPC، چرخه عمر RPC - Unary، Server streaming، Client streaming، Bidirectional streaming
توسعه فایل Protocol Buffer (فایل protobuf) برای توسعه API مبتنی بر قرارداد اول gRPC (Contract-First API Development)
ساخت ارتباطات gRPC بین میکروسرویسها با عملکرد بالا با .Net 5
ارتباط بین میکروسرویسهای بکاند با gRPC و AspNet 5
وظایف پسزمینه با پروژههای Worker Service در AspNet Core 5
مدیریت برنامههای سرویس طولانی مدت با قالب Worker Service در AspNet Core
مصرف سرویسهای gRPC scoped در یک وظیفه پسزمینه با پروژههای Worker Service در AspNet Core 5
پیادهسازی منطق تجارت الکترونیک با ارتباط فقط gRPC - سرویسهای gRPC محصول، سبد خرید و تخفیف
مصرف میکروسرویسهای سرور gRPC از سرویسهای کاری محصول و سبد خرید در یک وظیفه پسزمینه
امنیت سرویسهای gRPC با میکروسرویسهای مستقل Identity Server با استفاده از OAuth 2.0 و توکن JWT
سرور ProductGrpc عملیات CRUD را با gRPC نمایش میدهد
استفاده از پایگاه داده حافظه Entity Framework Core 5 با رویکرد Code-First
توسعه سناریوی استفاده واقعی از ارتباطات بین سرویسها با سرویسهای gRPC محصول، سبد خرید و تخفیف و مصرف از سرویسهای کاری
استفاده از gRPC برای پیادهسازی سیستمهای میکروسرویس سریع و توزیعشده
ایجاد برنامه کلاینت کنسول برای مصرف میکروسرویسهای Grpc
تولید محصولات با کلاس ProductFactory در برنامه Product Worker Service
لاگگیری و مدیریت خطا در برنامه سرور Grpc
احراز هویت سرویسهای gRPC با IdentityServer4، محافظت از متد ShoppingCartGrpc با OAuth 2.0 و JWT Bearer Token
سرفصل ها و درس ها
مقدمه
Introduction
مقدمه
Introduction
پیشنیازها و کد منبع
Prerequisites and Source Code
gRPC چیست؟
What is gRPC ?
gRPC چگونه کار میکند؟
How gRPC works ?
کار با Protocol Buffers
Working with Protocol Buffers
انواع متدهای gRPC - چرخههای عمر RPC
gRPC Method Types - RPC life cycles
گردش کار توسعه gRPC
gRPC Development Workflow
مزایای gRPC
Advantages of gRPC
gRPC در مقابل REST
gRPC vs REST
استفاده از gRPC در ارتباطات میکروسرویسها
gRPC usage of Microservices Communication
مثال gRPC در ارتباطات میکروسرویسها
Example of gRPC in Microservices Communication
gRPC با .NET
gRPC with .NET
عملکرد gRPC در .NET 5
gRPC performance in .NET 5
آزمون gRPC
Grpc Quiz
HelloWorld gRPC با Asp.Net 5
HelloWorld gRPC with Asp.Net 5
مقدمه
Introduction
ایجاد پروژه وب خالی Asp.Net Core برای HelloWorld Grpc
Create Asp.Net Core Empty Web Project For HelloWorld Grpc
توسعه فایل Protocol Buffer به نام hello.proto برای قرارداد gRPC
Developing hello.proto Protocol Buffer File (protobuf file) for gRPC Contract
پیادهسازی کلاس سرویس gRPC که از سرویس تولید شده gRPC ارثبری میکند
Implementing gRPC Service Class which Inherits from gRPC generated service
پیکربندی سرویس gRPC با ثبت تزریق وابستگی Asp.Net
Configure gRPC Service with Registering Asp.Net Dependecy Injection
اجرای برنامه به عنوان افشای سرویسهای gRPC
Run the Application as exposing gRPC Services
ایجاد برنامه کلاینت GrpcHelloWorldClient برای سرور gRPC
Create GrpcHelloWorldClient Client Application for gRPC Server
مصرف API سرویس HelloService از برنامه کلاینت کنسول با GrpcChannel
Consume Grpc HelloService API From Client Console Application with GrpcChannel
ایجاد سرور gRPC با قالب gRPC ویژوال استودیو
Scaffolding gRPC Server with gRPC Template of Visual Studio
ایجاد برنامه کلاینت GrpcGreeterClient برای سرور gRPC
Create GrpcGreeterClient Client Application for gRPC Server
مصرف API سرویس GreeterService از برنامه کلاینت کنسول با GrpcChannel
Consume Grpc GreeterService API From Client Console Application with GrpcChannel
تست سرویسهای gRPC با ابزار خط فرمان gRPCurl
Testing gRPC Services with gRPCurl command-line tool interaction
کشف سرویس با استفاده از بازتاب gRPC با ابزار خط فرمان gRPCurl
Service discovery using gRPC reflection with gRPCurl command-line tool
ساخت میکروسرویسهای محصول gRPC برای افشای APIهای CRUD محصول
Building Product Grpc Microservices for Exposing Product CRUD APIs
مقدمه
Introduction
ایجاد پروژه میکروسرویسهای محصول gRPC در راهحل میکروسرویسهای gRPC
Create Product Grpc Microservices Project in Grpc Microservices Solution
تنظیم پایگاه داده میکروسرویسهای محصول gRPC با پایگاه داده در حافظه Entity Framework
Set Product Grpc Microservices Database with Entity Framework In-Memory Database
پر کردن پایگاه داده در حافظه با Entity Framework برای میکروسرویس ProductGrpc
Seeding In-Memory Database with Entity Framework for ProductGrpc Microservice
توسعه فایل ProtoBuf به نام product.proto برای افشای سرویسهای Crud در Product Grp
Developing product.proto ProtoBuf file for Exposing Crud Services in Product Grp
تولید کلاس سرویس Proto از فایل Product proto در میکروسرویس Product Grpc
Generate Proto Service Class from Product proto File in Product Grpc Microsrvice
توسعه کلاس ProductService برای پیادهسازی متدهای سرویس Proto gRPC
Developing ProductService class to Implement Grpc Proto Service Methods
ایجاد برنامه کلاینت کنسول برای مصرف میکروسرویسهای محصول gRPC
Create Client Console Application for Consuming Product Grpc Microservices
مصرف متد سرور GetProductAsync محصول gRPC از برنامه کلاینت کنسول
Consume GetProductAsync Product Grpc Server Method from Client Console App
توسعه متد جریان سرور ProductService-GetAllProducts محصول gRPC
Developing ProductService-GetAllProducts Server Stream Method of Product Grpc
مصرف متد جریان سرور محصول GetAllProducts محصول از برنامه کلاینت کنسول
Consume GetAllProducts Product Server Stream Method from Client Console App
بازسازی متد جریان سرور GetAllProducts با ویژگیهای C# 9 در کلاینت
Refactoring GetAllProducts Server Stream Method with C# 9 Features in Client
توسعه متد سرور ProductService-AddProduct محصول gRPC میکروسرویسها
Developing ProductService-AddProduct Server Method of Product Grpc Microservices
پیادهسازی AutoMapper در کلاس ProductService میکروسرویسهای محصول gRPC
Implementing AutoMapper into ProductService Class of Product Grpc Microservices
مصرف متد سرور AddProductAsync از برنامه کلاینت کنسول
Consume AddProductAsync Server Method from Client Console Application
توسعه متدهای سرور ProductService-UpdateProductAsync-DeleteProductAsync
Developing ProductService-UpdateProductAsync-DeleteProductAsync Server Method
مدیریت استثناء در متدهای سرویس gRPC میکروسرویسهای محصول gRPC
Exception Handling in gRPC Service Methods of Product Grpc Microservices
لاگگیری در متدهای سرویس gRPC میکروسرویسهای محصول gRPC
Logging in gRPC Service Methods of Product Grpc Microservices
مصرف متدهای سرور UpdateProductAsync-DeleteProductAsync از کلاینت کنسول
Consume UpdateProductAsync-DeleteProductAsync Server Method from Client Console
توسعه متد سرور جریان کلاینت ProductService-InsertBulkProduct
Developing ProductService-InsertBulkProduct Client Stream Server Method
مصرف متد سرور جریان کلاینت InsertBulkProduct از برنامه کلاینت کنسول
Consume Client Stream InsertBulkProduct Server Method from Client Console App
ساخت سرویس Worker محصول برای تولید و درج محصول در ProductGrpc
Building Product Worker Service for Generate and Insert Product into ProductGrpc
مقدمه
Introduction
ایجاد پروژه سرویس Worker محصول در راهحل میکروسرویسهای gRPC
Create Product Worker Service Project in Grpc Microservices Solution
اضافه کردن سرویس متصل Proto به پروژه سرویس Worker محصول برای مصرف Prod
Add Connected Service Proto to Product Worker Service Project for Consuming Prod
تنظیم پیکربندی با فایل appsettings.json در پروژه سرویس Worker محصول
Set Configuration with appsettings.json file into Product Worker Service Project
مصرف متد سرور محصول gRPC از برنامه کلاینت سرویس Worker محصول
Consume Product Grpc Server Method From Product Worker Client Application
تمرکز بر تصویر بزرگ و افزودن محصولات توسط سرویس Worker محصول به سرور Product Grpc
Focus on Big Picture and Product Worker Add Products to Product Grpc Server
تولید محصولات با کلاس ProductFactory در برنامه سرویس Worker محصول
Generate Products with ProductFactory class in Product Worker Service App
لاگگیری در برنامه کلاینت سرویس Worker محصول و برنامه سرور Product Grpc
Logging in Product Worker Service Client Application and Product Grpc Server App
ساخت برنامه سرور gRPC Shopping Cart برای ذخیره محصولات در سبد خرید
Building Shopping Cart Grpc Server Application for Storing Products into Cart
مقدمه
Introduction
ایجاد پروژه میکروسرویسهایShoppingCart gRPC در راهحل میکروسرویسهای gRPC
Create Shopping Cart Grpc Microservices Project in Grpc Microservices Solution
تنظیم پایگاه داده میکروسرویسهایShoppingCart gRPC با پایگاه داده در حافظه Entity Framework
Set Shopping Cart Grpc Microservices Database with Entity Framework In-Memory Db
پر کردن پایگاه داده در حافظه با Entity Framework Core برای ShoppingCartGrpc
Seeding In-Memory Database with Entity Framework Core for ShoppingCartGrpc
توسعه فایل ProtoBuf به نام product.proto برای افشای سرویسهای Crud در ShoppingCart
Developing product.proto ProtoBuf file for Exposng Crud Services in ShoppingCart
تولید کلاس سرویس Proto از فایل ShoppingCart proto در ShoppingCart Grpc
Generate Proto Service Class from ShoppingCart proto File in ShoppingCart Grpc
توسعه کلاس ShoppingCartService برای پیادهسازی متدهای سرویس Proto gRPC
Developing ShoppingCartService class to Implement Grpc Proto Service Methods
پیادهسازی AutoMapper در کلاس ShoppingCartService میکروسرویسهایShoppingCart gRPC
Implementing AutoMapper into ShoppingCartService Class of ShoppingCart Grpc
توسعه کلاس ShoppingCartService برای پیادهسازی متدهای سرویس Proto gRPC
Developing ShoppingCartService class to Implement Grpc Proto Service Methods
توسعه متد سرور جریان کلاینت AddItemIntoShoppingCart
Developing AddItemIntoShoppingCart Client Stream Server Method
ساخت میکروسرویس گمرک تخفیف برای ارتباط بین سرویسها
Building Discount Grpc Microservice Inter-Service Communication
مقدمه
Introduction
ایجاد پروژه میکروسرویسهای گمرک تخفیف gRPC در راهحل میکروسرویسهای gRPC
Create Discount Grpc Microservices Project in Grpc Microservices Solution
توسعه مدل داده و اشیاء زمینه میکروسرویسهای گمرک تخفیف gRPC
Developing Discount Grpc Microservices Data Model and Context Objects
توسعه فایل ProtoBuf به نام discount.proto برای افشای سرویسهای دریافت تخفیف
Developing discount.proto ProtoBuf file for Exposing Get Discount Services
تولید کلاس سرویس Proto از فایل Discount proto در Discount Grpc
Generate Proto Service Class from Discount proto File in Discount Grpc
توسعه کلاس DiscountService برای پیادهسازی متدهای سرویس Proto gRPC
Developing DiscountService class to Implement Grpc Proto Service Methods
مصرف سرویس Discount gRPC از میکروسرویس Shopping Cart gRPC
Consuming Discount Grpc Service From Shopping Cart Grpc Microservice
مصرف سرویس Discount gRPC از میکروسرویس Shopping Cart gRPC بخش 2
Consuming Discount Grpc Service From Shopping Cart Grpc Microservice Part 2
ثبت کلاینت Discount gRPC و سرویس Discount در DI سبد خرید
Register Discount Grpc Client and Discount Service into the ShoppingCart DI
ساخت سرویس Worker سبد خرید برای بازیابی محصولات و افزودن به سبد خرید
Building ShoppingCart Worker Service for Retrieve Products and Add to SC
مقدمه
Introduction
ایجاد پروژه سرویس Worker سبد خرید در راهحل میکروسرویسهای gRPC
Create ShoppingCart Worker Service Project in Grpc Microservices Solution
اضافه کردن سرویسهای متصل Proto به پروژه سرویس Worker سبد خرید
Add Connected Services Proto to ShoppingCart Worker Service Project
تنظیم پیکربندی با فایل appsettings.json در سرویس Worker سبد خرید
Set Configuration with appsettings.json file into ShoppingCart Worker Service
مصرف متدهای سرور Product و ShoppingCart gRPC از سرویس Worker سبد خرید
Consume Product and ShoppingCart Grpc Server Method From ShoppingCart Worker
تصویر بزرگ - سبد خرید Worker - دریافت محصولات و افزودن اقلام به سبد خرید با جریان
Big Picture-ShoppingCart Worker - Get Products and Add Items to SC with stream
اجرای تمام میکروسرویسهای سرور gRPC با سرویسهای Worker محصول و سبد خرید
Running All Grpc Server Microservices with Product and ShoppingCart WorkerServce
احراز هویت سرویسهای gRPC با IdentityServer4 برای محافظت از متد ShoppingCartGrpc
Authenticate gRPC Services with IdentityServer4 Protect ShoppingCartGrpc Method
مقدمه
Introduction
ساخت میکروسرویسهای احراز هویت IdentityServer4 برای امن کردن سبد خرید
Building IdentityServer4 Authentication Microservices for Securing ShoppingCart
ساخت میکروسرویسهای احراز هویت IdentityServer4 برای امن کردن سبد خرید 2
Building IdentityServer4 Authentication Microservices for Securing ShoppingCart2
پیکربندی IdentityServer4 با افزودن کلاس پیکربندی برای کلاینتها، منابع و دامنه
Configure IdentityServer4 with Adding Config Class for Clients, Resources, Scope
امن کردن سرویسهای gRPC سبد خرید با IdentityServer4 OAuth 2.0 و JWT
Securing ShoppingCart Grpc Services with IdentityServer4 OAuth 2.0 and JWT
تست دسترسی به سرویسهای gRPC سبد خرید بدون توکن
Testing to Access ShoppingCart Grpc Services without Token
دریافت توکن از IS4 و انجام فراخوانی gRPC به سرویسهای gRPC سبد خرید با JWT
Get Token From IS4 and Make Grpc Call to ShoppingCart Grpc Services with JWT
تنظیم توکن در هدر gRPC هنگام فراخوانی سرویسهای gRPC سبد خرید
Set Token to Grpc Header when Call to ShoppingCart Grpc Services
اجرای تمامی برنامهها و مشاهده تصویر کلی در سیستم محلی شما
Run Entire Applications and See the Big Picture in Your Local
تکلیف - جریان کامل در سرویس اطلاعرسانی با ارتباط دو طرفه
ASSIGNMENT - FULL STREAM IN NOTIFCATION SERVICE WITH BIDIRECTIONAL COMMUNICATION
نمایش نظرات