在与 .Net 5 的微服务通信中使用 gRPC

使用.Net构建后端微服务之间的高性能gRPC服务间通信

讲师:Mehmet Ozkaya

口袋资源独家Udemy付费课程独家中英文字幕配套资料齐全!

不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。

你将学到什么

  • .Net 5 微服务中的 gRPC
  • 使用 proto3 语言处理 Protocol Buffers 并应用 google 众所周知的类型
  • gRPC 方法类型、RPC 生命周期 – 一元、服务器流、客户端流、双向流
  • 为 gRPC 合约优先 API 开发开发协议缓冲区文件(protobuf 文件)
  • 使用 .Net 5 构建高性能 gRPC 服务间通信
  • 使用 gRPC 和 AspNet 5 的后端微服务之间的通信
  • AspNet Core 5 中辅助服务项目的后台任务
  • 使用 AspNet Core Worker Service 模板管理长时间运行的服务应用程序
  • 通过 AspNet Core 5 中的辅助服务项目在后台任务中使用范围化的 gRPC 服务
  • 仅使用 gRPC 通信实现电子商务逻辑 – 产品、购物车和折扣 gRPC 服务
  • 在后台任务中使用 Product 和 ShoppingCart Worker Service 中的 gRPC 服务器微服务
  • 使用 OAuth 2.0 和 JWT 令牌通过独立的 Identity Server 微服务保护 gRPC 服务
  • ProductGrpc Server 使用 gRPC 公开 CRUD 操作
  • 通过代码优先方法使用 Entity Framework Core 5 内存数据库
  • 使用产品、购物车和折扣 gRPC 服务以及来自工作人员服务的消耗来开发真实世界的服务间通信用例
  • 使用gRPC实现快速分布式微服务系统
  • 创建客户端控制台应用程序以使用 Grpc 微服务
  • 在 Product Worker Service 应用程序中使用 ProductFactory 类生成产品
  • Grpc Server 应用程序的日志记录和异常处理
  • 使用 IdentityServer4 验证 gRPC 服务 使用 OAuth 2.0 和 JWT 承载令牌保护 ShoppingCartGrpc 方法

要求

  • C#知识
  • Aspnet核心基础知识

描述

您将学习如何使用 .Net 5 和 AspNet 5 在后端微服务之间构建高性能gRPC 服务间通信

微服务是现代分布式系统,因此通过ASP.NET 5 中的 gRPC,我们将开发高性能、跨平台应用程序来构建分布式系统和 API。它是后端微服务、内部网络应用程序或物联网设备和服务之间通信的理想选择。随着 ASP.NET 5 的发布,Microsoft 增加了对使用 Asp.Net 5创建 gRPC 服务的一流支持。

本课程将引导您开始在分布式微服务架构上构建、开发和管理gRPC服务器和客户端。

课程项目总体架构

我们可以设计出6个微服务,我们要一一开发。

我们将使用Worker ServicesAsp.Net 5 Grpc 应用程序来构建定义原型服务定义合约的客户端和服务器 gRPC 组件。

我们将仅使用 gRPC 通信来实现现实世界的电子商务用例。我们将拥有 3 个 gRPC 服务器应用程序,分别是ProductShoppingCartDiscount gRPC 服务。我们将有 2 个工作人员服务,即ProductShoppingCart Worker Service。Worker 服务将作为客户端并通过 gRPC 服务器应用程序执行操作。我们将使用带有OAuth 2.0JWT令牌的独立Identity Server微服务来保护gRPC 服务

ProductGrpc 服务器应用程序

首先,我们要开发ProductGrpc项目。这将是 Asp.Net gRPC 服务器 Web 应用程序,并公开用于 Product Crud 操作的 api。

产品工人服务

之后,我们将开发 Product Worker Service 项目来使用ProductGrpc 服务。该产品工作人员服务项目将作为 ProductGrpc 应用程序的客户端,并使用ProductGrpc 应用程序的客户端流 gRPC 原型服务生成产品并将批量产品记录插入到产品数据库中。该操作将在一个时间间隔内作为服务应用程序循环进行。

ShoppingCartGrpc 服务器应用程序

之后,我们将开发ShoppingCartGrpc项目。这将是 Asp.Net gRPC 服务器Web 应用程序,并公开用于 SC 和 SC 项目操作的 api。grpc 服务将创建购物车并向购物车添加或删除商品。

购物车工作人员服务

之后,我们将开发 ShoppingCart Worker Service 项目来使用 ShoppingCartGrpc 服务。此 ShoppingCart Worker 服务项目将是 ProductGrpc 和 ShoppingCartGrpc 应用程序的客户端。该工作服务将从ProductGrpc 读取产品并创建 sc 并使用 ProductGrpc 和 ShoppingCartGrpc 应用程序的 gRPC 原型服务将产品项添加到 sc 中。该操作将在一个时间间隔内作为服务应用程序循环进行。

DiscountGrpc 服务器应用程序

当添加产品项目到SC时,它会检索折扣值并计算产品的最终价格。此通信也将是与 SCGrpc 和 DiscountGrpc 应用程序的 gRPC 调用。

身份服务器

此外,我们将开发集中式独立身份验证服务器,并实现IdentityServer4包,微服务的名称为 Identity Server。
Identity Server4 是一个开源框架,它为 .Net Core 实现了OpenId ConnectOAuth2协议。
借助 IdentityServer,我们可以使用 OAuth 2.0 和 JWT 令牌来保护 ShoppingCart gRPC 服务。SC Worker 将在向 ShoppingCart Grpc 服务器应用程序发送请求之前获取令牌。

在本课程结束时,您将实际了解如何使用gRPC 来实现快速的分布式微服务系统。此外,您还将了解如何在微服务架构中使用 IdentityServer 保护受保护的 grpc 服务。

这门课程适合你吗?

这门课程非常实用,大约 90% 以上的课程将让你和我一起在这个项目上编码。如果您是那种从实践中获得最大收益的人,那么这门课程绝对适合您。

本课程所需的工具

在本课程中,所有课程均使用 Visual Studio 2019 作为代码编辑器进行演示。当然,您可以使用任何您喜欢的代码编辑器和任何您喜欢的操作系统,只要它是 Windows 或 Mac。

本课程适合谁:

  • 对 gRPC 和微服务感兴趣的 .Net 开发人员

发表回复

后才能评论

  • 每一个课程页面,都有演示地址选项,点击链接可以跳转到课程发布网站查看详细课程列表。
  • 绝大部分课程都有试看内容,可以先点击试看,再决定是否购买。
  • 本站课程均存储在阿里云盘或百度网盘中,由于阿里云盘对分享的文件类型有限制,所以课程资料和字幕会存储到蓝奏云盘中。
  • 阿里云盘和蓝奏云盘都是不限速下载的,你既可以选择在阿里云盘中在线学习,也可以选择下载到本地学习。
  • 课程下载到本地可以挂载中英文双字幕,请点击查看Potplayer挂载中英文双字幕教程
  • 本站所有课程,均提供mp4格式视频文件,中英文双字幕,配套资料齐全,不加密。
  • 每一个课程右侧下载面板中,都会有清晰度标识,大部分都是1080P或者720P,还有少数是超高清的。
  • 本站课程购买之后,均可以免费更新,所有课程,皆配有中文字幕。
  • 请注意,课程的中文字幕是根据英文字幕用谷歌翻译生成的,本非人工翻译。谷歌翻译准确度尚可,学习观看,没有问题。
  • 由于数字资源具有可复制性,一旦购买,不接受退款要求,请在购买之前,认真了解课程内容,确定是否需要。
  • 当然,如果有特殊情况,可以查看网站底部联系方式,联系站长说明问题,我会为你妥善处理。
  • 赞助本站VIP会员,可以免费下载所有课程,详情请查看VIP介绍