.NET 5 上的微服务架构和实现
使用 Asp.Net Web API、Docker、RabbitMQ、Ocelot API Gateway、MongoDB、Redis、SqlServer 在 .Net 上构建微服务
讲师:Mehmet Ozkaya
双语IT资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将学到什么
- 微服务的ASPNET Core Web API开发
- REST API原理、CRUD操作
- Docker 上的 Mongo DB 和 Redis NoSQL 数据库连接
- Docker 上具有 SQL Server 数据库连接的 Entity Framework Core
- 使用存储库模式的 N 层实现
- Swagger 开放 API 实现
- 使用 Discount Grpc 服务进行服务间同步通信来计算产品最终价格
- 使用 MassTransit 和 RabbitMQ 发布 BasketCheckout 队列
- 使用 Basket 微服务构建高性能的服务间 gRPC 通信
- 使用Dapper进行微ORM实现,简化数据访问并保证高性能
- PostgreSQL 数据库连接和容器化
- 与 RabbitMQ 消息代理服务的异步微服务通信
- 使用 RabbitMQ 发布/订阅主题交换模型
- 使用 MassTransit 对 RabbitMQ 消息代理系统进行抽象
- 使用最佳实践实施 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进行容器轻量级管理UI,让您轻松管理不同的Docker环境
- pgAdmin PostgreSQL 工具具有丰富的 PostgreSQL 开源管理和开发平台
要求
- C# 知识(泛型、异步/等待、匿名方法、操作、谓词)
- 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 开放 API 实现
篮子微服务包括:
- ASP.NET Web API 应用程序
- REST API原理、CRUD操作
- Redis数据库连接和容器化
- 使用Discount gRPC 服务进行服务间同步通信来计算产品最终价格
- 使用MassTransit 和 RabbitMQ发布BasketCheckout 队列
折扣微服务包括:
- ASP.NET gRPC 服务器应用程序
- 使用 Basket 微服务构建高性能的服务间 gRPC 通信
- 通过创建Protobuf 消息来公开 gRPC 服务
- 使用Dapper进行微ORM实现,简化数据访问并保证高性能
- PostgreSQL 数据库连接和容器化
微服务通信
- 同步服务间gRPC 通信
- 与RabbitMQ 消息代理服务的异步微服务通信
- 使用RabbitMQ 发布/订阅主题交换模型
- 使用MassTransit对 RabbitMQ 消息代理系统进行抽象
- 从 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 Gateway/BFF容器类型
- Shopping.Aggregator 中的网关聚合模式
WebUI ShoppingApp 微服务
- 带有 Bootstrap 4 和 Razor 模板的 ASP.NET Core Web 应用程序
- 使用 HttpClientFactory调用Ocelot API
- ASPNET Core Razor 工具 — 视图组件、部分视图、标记帮助器、模型绑定和验证、Razor 部分等。
辅助容器
- 使用Portainer进行容器轻量级管理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 上的微服务的高级开发人员
如果你有能力,请务必支持课程的原创作者,这是他们应得的报酬!
本站收取的费用,仅用来维持网站正常运行的必要支出,从本站下载任何内容,说明你已经知晓并同意此条款。