《容器化.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做了细致的分析!


《容器化.NET应用架构指南》脑图学习笔记(第一部分)的更多相关文章
- .NET微服务 容器化.NET应用架构指南(支持.NET Core2)
介绍 企业通过使用容器,日益实现成本节约.解决部署问题并改进 DevOps 和生产操作. 通过创建 Azure 容器服务.Azure Service Fabric 等产品,同时与 Docker.Mes ...
- 开源Android容器化框架Atlas开发者指南
Atlas是古希腊神话中的天神,是波士顿动力公司的机器人,借助搜索引擎,得以发现这个名词背后许许多多的含义.在手机淘宝,Atlas是一个扎根于Android客户端的一个组件化容器框架,相比神话中用手和 ...
- WordPress 缩率图学习笔记
WordPress 缩率图学习笔记 Wordpress在生成缩略图的过程中,有两种不同的规则 缩放模式:缩放模式就是将图片等比例缩小,且新生成的缩略图长度或高度两者之中,有一个是你设置的缩略图的尺寸 ...
- 免费开源《OdooERP系统部署架构指南》试读:第一章 Odoo架构概述
文/开源智造联合创始人老杨 本文来自<OdooERP系统部署架构指南>的试读章节.书籍尚未出版,请勿转载.欢迎您反馈阅读意见. 从web浏览器到PostgreSQL,多层与其他层交互以处理 ...
- 《Hadoop大数据架构与实践》学习笔记
学习慕课网的视频:Hadoop大数据平台架构与实践--基础篇http://www.imooc.com/learn/391 一.第一章 #,Hadoop的两大核心: #,HDFS,分布式文件系统 ...
- PHP-生成缩略图和添加水印图-学习笔记
1.开始 在网站上传图片过程,经常用到缩略图功能.这里我自己写了一个图片处理的Image类,能生成缩略图,并且可以添加水印图. 2.如何生成缩略图 生成缩略图,关键的是如何计算缩放比率. 这里,我根据 ...
- 《JavaScript权威指南》学习笔记 第一天。
这是零零散散的笔记,作为自己看书打demo的笔记.不足为各位学习,留作自己复习知识点备用. 1.检测对象中某个属性存在不存在: <script> // in 运算符 //不管是对象的自有属 ...
- E-R图学习笔记
E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型. 方法 编辑 E-R方法是“实体-联系方法”( ...
- OpenGL编程指南第版本学习笔记 --- OpenGL程序实现过程(win32 + OpenGL)
1. 先上代码 头文件glCommon.h #include <GL/glew.h> #include <GL/GL.h> #include <GL/GLU.h> ...
随机推荐
- mongodb的一些操作
插入: db.inventory.insert( { _id: 10, type: "misc", item: "card", qty: 15 } ) db.i ...
- libcurl库的简介(一)
一.Libcurl库简介 LibCurl是免费的客户端URL传输库,支持FTP,FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE ,LDAP ...
- 「JSOI2015」地铁线路
「JSOI2015」地铁线路 传送门 第一问很简单:对于每条线路建一个点,然后所有该条线路覆盖的点向它连边,权值为 \(1\) ,然后它向所有线路上的点连边,权值为 \(0\) . 然后,跑一边最短路 ...
- Linux01——常用命令
帮助命令: man 一行一行显示 ,按下enter键就向下显示一行,按q退出 --help 全部显示 日期类:date ,cal 显示当前目录:pwd 切换目录:cd(***重点***) cd .. ...
- spring简要回顾
spring内容 spring容器: @Repository @Service @Controller @Component <bean id="类名首字母小写">默认 ...
- GO:go语言介绍
什么是go语言 Google开源 编译型语言 21世纪的C语言 go开发团队: go的特点 语法简洁 开发效率高 执行性能好 发展现状 最近新兴的行业公司一般会使用go语言作为主要开发语言 容器虚拟化 ...
- 创业学习---《如何展开竞争情报调研》--D-1.调研模块---HHR计划---以太一堂
第一:<开始学习> 1,投资人看人标准:人品好:创业热情:学习能力. 2,思考题:请你预判一个最靠谱的方向来创业,你会怎么调研呢? 3,预热思考题: (1)在这个赛道,究竟有哪些重要竞争对 ...
- Jmeter-ServerAgent
You can specify the listening ports as arguments (0 disables listening), default is 4444: $ ./star ...
- Python(二) isinstance
原文链接: http://www.baike.com/wiki/isinstance&prd=jinshan https://www.liaoxuefeng.com/wiki/00143160 ...
- leetcode 387
Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...