Using gRPC in Microservices Communication with .Net 5

Building a high-performance gRPC Inter-service Communication between backend microservices with .Net

4.15 (215 reviews)
Udemy
platform
English
language
Web Development
category
instructor
Using gRPC in Microservices Communication with .Net 5
2,277
students
7.5 hours
content
Nov 2023
last update
$54.99
regular price

What you will learn

gRPC in Microservices with .Net 5

Working with Protocol Buffers using proto3 Language and apply google well-known types

gRPC Method Types, RPC life cycles - Unary, Server streaming, Client streaming, Bidirectional streaming

Develop Protocol Buffer File (protobuf file) for gRPC Contract-First API Development

Building a high-performance gRPC Inter-service Communication with .Net 5

Communication between backend microservices with gRPC and AspNet 5

Background tasks with Worker Service Projects in AspNet Core 5

Manage long running service apps with AspNet Core Worker Service template

Consuming a scoped gRPC services in a background task with Worker Service Projects in AspNet Core 5

Implementation of e-commerce logic with only gRPC communication - Product, ShoppingCart and Discount gRPC services

Consuming gRPC Server Microservices from Product and ShoppingCart Worker Service in a background task

Secure the gRPC services with standalone Identity Server microservices with OAuth 2.0 and JWT token

ProductGrpc Server Expose CRUD operations with gRPC

Using Entity Framework Core 5 In-Memory Database with Code-First Approach

Develop Realworld Inter-Service Communication Use Case with Product, ShoppingCart and Discount gRPC services and Consumes from Worker Services

Use gRPC to implement a fast and distributed microservices systems

Create Client Console Application for Consuming Grpc Microservices

Generate Products with ProductFactory class in Product Worker Service Application

Logging and Exception Handling with Grpc Server Application

Authenticate gRPC Services with IdentityServer4 Protect ShoppingCartGrpc Method with OAuth 2.0 and JWT Bearer Token

Why take this course?

You will learn how to Build a high-performance gRPC Inter-service Communication between backend microservices with .Net 5 and AspNet 5.

Microservices are modern distributed systems so with gRPC in ASP.NET 5, we will develop high-performance, cross-platform applications for building distributed systems and APIs. It’s an ideal choice for communication between backend microservices, internal network applications, or iot devices and services. With the release of ASP.NET 5, Microsoft has added first-class support for creating gRPC services with Asp.Net 5.

This course will led you get started building, developing and managing gRPC servers and clients on distributed microservices architecture.

Overall Architecture of Course Project

We can design that we will have 6 microservices which we are going to develop one by one.

We will use Worker Services and Asp.Net 5 Grpc Applications to build client and server gRPC components defining proto service definition contracts.

We will implement realworld e-commerce use case with only gRPC communication. We will have 3 gRPC server applications which are Product ShoppingCart and Discount gRPC services. And we will have 2 worker services which are Product and ShoppingCart Worker Service. Worker services will be client and perform operations over the gRPC server applications. And we will secure the gRPC services with standalone Identity Server microservices with OAuth 2.0 and JWT token.

ProductGrpc Server Application

First of all, we are going to develop ProductGrpc project. This will be Asp.Net gRPC server web application and expose apis for Product Crud operations.

Product Worker Service

After that, we are going to develop Product Worker Service project for consuming ProductGrpc services. This product worker service project will be the client of ProductGrpc application and generate products and insert bulk product records into Product database by using client streaming gRPC proto services of ProductGrpc application. This operation will be in a time interval and looping as a service application.

ShoppingCartGrpc Server Application

After that, we are going to develop ShoppingCartGrpc project. This will be Asp.Net gRPC server web application and expose apis for SC and SC items operations. The grpc services will be create shopping cart and add or remove item into shopping cart.

ShoppingCart Worker Service

After that, we are going to develop ShoppingCart Worker Service project for consuming ShoppingCartGrpc services. This ShoppingCart worker service project will be the client of both ProductGrpc and ShoppingCartGrpc application. This worker service will read the products from ProductGrpc and create sc and add product items into sc by using gRPC proto services of ProductGrpc and ShoppingCartGrpc application. This operation will be in a time interval and looping as a service application.

DiscountGrpc Server Application

When adding product item into SC, it will retrieve the discount value and calculate the final price of product. This communication also will be gRPC call with SCGrpc and DiscountGrpc application.

Identity Server

Also, we are going to develop centralized standalone Authentication Server with implementing IdentityServer4 package and the name of microservice is Identity Server.
Identity Server4 is an open source framework which implements OpenId Connect and OAuth2 protocols for .Net Core.
With IdentityServer, we can provide protect our ShoppingCart gRPC services with OAuth 2.0 and JWT tokens. SC Worker will get the token before send request to ShoppingCart Grpc server application.

By the end of this course, you will have a practical understanding of how to use gRPC to implement a fast and distributed microservices systems. And Also you’ll learn how to secure protected grpc services with IdentityServer in a microservices architecture.


Is this course for you?

This course is very practical, about 90%+ of the lessons will involve you coding along with me on this project. If you are the type of person who gets the most out of learning by doing, then this course is definitely for you.

Tools you need for this course

In this course all the lessons are demonstrated using Visual Studio 2019 as a code editor. You can of course use any code editor you like and any Operating system you like as long as it's Windows or Mac.

Screenshots

Using gRPC in Microservices Communication with .Net 5 - Screenshot_01Using gRPC in Microservices Communication with .Net 5 - Screenshot_02Using gRPC in Microservices Communication with .Net 5 - Screenshot_03Using gRPC in Microservices Communication with .Net 5 - Screenshot_04

Reviews

Zeeshan
November 17, 2023
easy to understand, explaniation of all the require concepts necessary to learn GRPC. very good course
Eduar
September 2, 2022
Muy completo, la información es propicia al uso de este framework, que esta solucionando una gran cantidad de necesidades a nivel de manejo de activos digitales.
Prashanth
July 2, 2022
Thank you Mehmet. I am really learning a lot. Very grateful to you for these courses..thanks you so much
Paulo
April 5, 2022
Good course! I expected implementation with more advanced techniques, such as examples Load Balancing, Handling transient failures with gRPC recoveries, Reliable gRPC services with deadlines and cancellation.
Qamar
February 7, 2022
I like this course. I had no idea about GRPC but the way it is presented with excellent examples resolved my queries. I wish to see the same example with the container.
Chris
September 13, 2021
I expected to learn more on the gPRC services, e.g. configuration, contracts, protobuf messages or versioning. Instead, there is a LOT of repetition for setting up and configuring projects (e.g. create project, configure EF etc). Nevertheless, it's a good lesson for getting started with gPRC
Divyesh
July 5, 2021
It would have better if you could have added the code for assignment as well. I know it was as add on, but would have been better. Apart from this, I really enjoyed the explanation and course. All the very best and keep coming with such courses. Thanks!!!
Gerd
May 28, 2021
Because of his accent sometimes hard to understand, but the content is excellent! It is really worth to stick to the lessons event if sometime you have to figure out what he is saying but you always can see it in the code what he is doing. I am a senior developer and I learned some really good and practical things about grpc.
Alireza
April 20, 2021
This is a great course to learn how to use GRPC with .Net Core. solid demo covering various scenarios beside amazing explanation of the concepts. Highly recommend it.
Peter
January 23, 2021
Great knowledge share, with some good tips on debugging and developing gRPC services. Would like it if some information given on publishing said services.
Shqipdon
January 7, 2021
This is the second course I have purchased from this professor. It was really worth buying this course, I learned a lot of new things from this course. From now on I better understand the logic of gRPC in microservice. I have no remarks, the professor is very well understood in the video and in the demonstration. I'm sure you will learn new things.

Charts

Price

Using gRPC in Microservices Communication with .Net 5 - Price chart

Rating

Using gRPC in Microservices Communication with .Net 5 - Ratings chart

Enrollment distribution

Using gRPC in Microservices Communication with .Net 5 - Distribution chart

Related Topics

3626658
udemy ID
11/10/2020
course created date
11/20/2020
course indexed date
Bot
course submited by