Microservices Architecture and Implementation on .NET 5

Microservices Architecture and Implementation on .NET 5在使用 Asp.Net Web API、Docker、RabbitMQ、Ocelot API Gateway、MongoDB、Redis、SqlServer 的 .Net 上构建微服务

你将会学到的

  • 微服务的ASPNET Core Web API开发
  • REST API 原理、CRUD 操作
  • Docker 上的 Mongo DB 和 Redis NoSQL 数据库连接
  • Entity Framework Core 与 Docker 上的 SQL Server 数据库连接
  • 使用存储库模式的 N 层实现
  • Swagger Open API 实现
  • 使用折扣 Grpc 服务进行服务间同步通信,计算产品最终价格
  • 使用 MassTransit 和 RabbitMQ 发布 BasketCheckout 队列
  • 使用 Basket Microservice 构建高性能的服务间 gRPC 通信
  • 使用Dapper进行微表单实现,简化数据访问,保证高性能
  • PostgreSQL 数据库连接和容器化
  • 与 RabbitMQ 消息代理服务的异步微服务通信
  • 使用 RabbitMQ 发布/订阅主题交换模型
  • 使用 MassTransit 对 RabbitMQ Message-Broker 系统进行抽象
  • 使用最佳实践实施 DDD、CQRS 和清洁架构
  • 使用 MediatR、FluentValidation 和 AutoMapper 包开发 CQRS
  • 使用 MassTransit-RabbitMQ 配置使用 RabbitMQ BasketCheckout 事件队列
  • 使用 Entity Framework Core ORM 并在应用程序启动时自动迁移到 SqlServer
  • Ocelot API Gateway微服务开发
  • 使用 HttpClientFactory 调用 Ocelot API
  • Shopping Aggregator 中的网关聚合模式
  • 带有 Bootstrap 4 和 Razor 模板的 ASPNET Core Web 应用程序
  • Docker Compose 所有微服务的容器化
  • 使用 Portainer for Container 轻量级管理 UI,让您轻松管理不同的 Docker 环境
  • pgAdmin PostgreSQL 工具为 PostgreSQL 提供丰富的开源管理和开发平台

要求

  • C# 知识(泛型、async/await、匿名方法、action、predicate)
  • Aspnet基础知识
  • Docker基础知识

说明

本课程来自一个实时的 github aspnetrun 微服务存储库,该存储库经过社区验证,拥有1700 多个星1000 多个分支。

您将学习如何在使用Asp.Net Web API、Docker、RabbitMQ、MassTransit、Grpc、Ocelot API Gateway、MongoDB、Redis、PostgreSQL、SqlServer、Dapper、Entity Framework Core、CQRS 和 Clean Architecture 实现的 .Net平台构建微服务24.5 小时完全升级的视频。

您将使用NoSQL(MongoDB、Redis)关系数据库(PostgreSQL、Sql Server)在产品、购物篮订购微服务上开发电子商务模块,并通过RabbitMQ 事件驱动通信和使用Ocelot API 网关进行通信。您可以在 .NET 上找到微服务体系结构和分步实施,它逐步开发了本课程,并提供了广泛的解释和详细信息。

与此同时,您将开发以下微服务和项目:

目录微服务包括;

  • ASP.NET Core Web API 应用程序
  • REST API原理、CRUD操作
  • MongoDB 数据库连接和容器化
  • 存储库模式实现
  • Swagger Open API 实现

篮子微服务包括;

  • ASP.NET Web API 应用程序
  • REST API原理、CRUD操作
  • Redis 数据库连接和容器化
  • 使用折扣gRPC 服务进行服务间同步通信以计算产品最终价格
  • 使用MassTransit 和 RabbitMQ发布BasketCheckout 队列

折扣微服务包括;

  • ASP.NET gRPC 服务器应用程序
  • 使用 Basket Microservice构建高性能的服务间 gRPC 通信
  • 通过创建Protobuf 消息公开 gRPC 服务
  • 使用Dapper进行微表单实现,简化数据访问,保证高性能
  • PostgreSQL 数据库连接和容器化

微服务通信

  • 同步服务间gRPC 通信
  • 与RabbitMQ 消息代理服务的异步微服务通信
  • 使用RabbitMQ 发布/订阅主题交换模型
  • 使用MassTransit对 RabbitMQ Message-Broker 系统进行抽象
  • 从 Basket 微服务发布 BasketCheckout 事件队列并从 Ordering 微服务订阅该事件
  • 创建RabbitMQ EventBus.Messages 库并添加引用微服务

订购微服务

  • 使用最佳实践实施DDD、CQRS 和清洁架构
  • 使用 MediatR、FluentValidation 和 AutoMapper 包开发CQRS
  • 使用MassTransit-RabbitMQ配置使用RabbitMQ BasketCheckout 事件队列
  • SqlServer 数据库连接和容器化
  • 使用Entity Framework Core ORM并在应用程序启动时自动迁移到 SqlServer

API网关Ocelot微服务

  • 使用 Ocelot实现API 网关
  • 通过 API 网关重新路由的示例微服务/容器
  • 运行多个不同的API 网关/BFF容器类型
  • Shopping.Aggregator 中的网关聚合模式

WebUI ShoppingApp 微服务

  • 带有 Bootstrap 4 和 Razor 模板的 ASP.NET Core Web 应用程序
  • 使用 HttpClientFactory调用Ocelot API
  • ASPNET Core Razor 工具——查看组件、部分视图、标记帮助程序、模型绑定和验证、Razor 部分等。

辅助容器

  • 使用Portainer for Container 轻量级管理 UI,让您轻松管理不同的 Docker 环境
  • pgAdmin PostgreSQL 工具为 PostgreSQL 提供丰富的开源管理和开发平台

Docker Compose 建立在 docker 上的所有微服务;

  • 微服务容器化
  • 数据库容器化
  • 覆盖环境变量

在所有这些之上,您将学习如何编写高质量的代码,而不仅仅是如何构建微服务。在本课程中,您将看到使用DDD最佳实践演示分层应用程序架构。实现 NLayer六角架构(核心层、应用层、基础设施层和表示层)和领域驱动设计(实体、存储库、领域/应用服务、DTO 的…),旨在成为一个干净的架构,应用SOLID 原则以便用于一个项目模板。还实现了最佳实践,松耦合、倒置依赖架构和使用设计模式,如依赖注入、日志记录、验证、异常处理等。

这个课程适合你吗?

这门课程非常实用,大约 90% 以上的课程将涉及你和我一起编写这个项目。如果您是那种边做边学的人,那么本课程绝对适合您。

本课程所需的工具

在本课程中,所有课程都使用 Visual Studio 作为代码编辑器进行演示。您当然可以使用您喜欢的任何代码编辑器和您喜欢的任何操作系统,只要它是 Windows 或 Mac。还使用 Docker Desktop 以使用不同的数据库提供程序。

此课程面向哪些人:

  • 对 API 和微服务感兴趣的 AspNet Core 开发人员初学者
  • 有兴趣学习如何在 .Net 上构建微服务的 C# 开发人员
  • 希望在 .Net 上使用微服务的高级开发人员
声明:本站所有资源、素材等全部来源于互联网,赞助VIP仅用于对IT资源服务器带宽等费用支出做支持,从本站下载资源,说明你已同意本条款。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
TheItzy » Microservices Architecture and Implementation on .NET 5