《容器化.NET应用架构指南》脑图学习笔记(一)
一、关于这本官方“圣经”
作为.NET程序员,对于微软官方推动的架构示例总是特别关注,从PetShop到MusicStore再到eShopOnContainers,每一次关注,都会了解到业界最新的架构风格。这里引用园友杨晓东描述这几个经典示例项目的一段文字:
(1)PetShop:WebForm 的示例程序。典型的三层架构风格的应用程序。
(2)MusicStore: 针对于 MVC3~5 框架和 EF 的一个示例程序。无明显架构风格。
(3)eShop: 针对于 ASP.NET Core 的示例程序,它是一个 Rest 架构风格的应用程序。
从微软推出来的示例的架构风格的转变也可以看出,现代应用程序架构已经从单一的传统风格架构(N-Tire或Layered)转向了多种混合风格架构,像eShop就包含了以下多种架构风格:
其中包括了:
- 基于数据驱动的CRUD微服务
- 基于DDD的微服务
但在实际的微服务架构中,又不止上面提到的两种,如下图所示:
多个微服务组成的应用程序中,各自可以用不同的架构方式实现。
说了这么多eShop示例的东西,那么这本书又有啥关系呢?来看看这本书的介绍:
“ 本指南介绍如何使用容器开发基于微服务的应用程序并对其进行管理。本指南探讨使用 .NET Core 和 Docker 容器的体系结构设计和实现方法。 为了更加轻松地开始使用容器和微服务,本指南重点介绍一个容器化和基于微服务的参考应用程序eShopOnContainers, 可通过 eShopOnContainers GitHub 存储库获取该示例应用程序。”
明白了吧?想要了解eShop及其背后的架构,除了立马去github clone该项目之外,系统性的学习就是靠这本书了,还不去下载下来看看?
注:这本书是微软官方微服务参考指南(由Microsoft 开发人员部门、.NET 和 Visual Studio 产品团队等联合出品。旨在帮助开发人员更高效更准确的实现微服务架构应用程序),下载地址。
二、思维导图精华笔记
(1)容器化与微服务基础知识
(2)部署.NET Core到Docker及基于微服务的.NET Core应用知识
(3)使用DDD & CQRS应对业务复杂性
(4)EF Core & NoSQL实现持久层基础架构
(5)微服务应用层 & WebAPI
(6)实现弹性应用 & 微服务安全
后续脑图
使用DDD和CQRS应对业务复杂性、EF Core与NoSQL实现持久层基础架构、微服务应用层与WebAPI、实现弹性应用与微服务安全等章节话题。
参考资料
首先,肯定是微软出版的这本指南:
其次,感谢圣杰的微服务知多少系列文章,他对eShopOnContainers做了细致的分析!