.NET 云原生架构师训练营(模块二 基础巩固 引入)--学习笔记
2.1 引入
- http协议
- web server && web application framework
- .net 与 .net core asp .net core
- web api 示例
CS:客户端-服务器
BS:浏览器-服务器
2.1.1 http协议
- 请求过程
- 消息结构
- 请求方法
- 状态码
- header
请求过程
- 1.URL解析
- 2.DNS查询
- 3.TCP连接
- 4.处理请求
- 5.接受响应
- 6.渲染页面
在浏览器输入 URL 回车之后发生了什么:
https://juejin.im/post/6844903922084085773
消息结构
了解HTTP请求和响应结构:
https://juejin.im/post/6844903843277307917
请求方法
- GET 获取
- POST 创建
- PUT 替换(资源整体替换)
- PATCH 修改(资源段落性修改)
- DELETE 删除
- OPTIONS
状态码
- 200
- 300 已转移地址/永久移动(response redirect)
- 401 未认证
- 403 未授权
- 404 未找到文件
- 500 内部服务错误,服务器不知道如何处理的错误
HTTP协议详解:
https://www.cnblogs.com/tankxiao/archive/2012/02/13/2342672.html
2.1.2 web server && web application framework
web server
- IIS
- Nginx
- Apache
webapplication framework
- asp .net
- asp .net core
- springboot
- express

基本功能
- url映射
- 安全性(认证、授权等)
- 网页模板系统 razer pages
- 数据库关系与映射(ORM)
扩展功能
- 依赖注入
- 配置
- 日志
2.1.3 .net 与 .net core asp .net core

.net 是一个开发者平台的统称,用它可以构建多种类型的应用程序
.net 平台下的开发语言:c#/F#/Visual Basic
平台标准 .NET Standard:
https://dotnet.microsoft.com/platform/dotnet-standard

平台实现
- .net core: 跨平台方案
- .net framework: web sites, services, apps on windows
- Xamarin/mono: .net for mobile
每个平台由以下组件构成:
一个或多个运行时。示例:CLR 用于 .NET Framework,CoreCLR 和 CoreRT 用于 .NET Core
实现 .NET Standard 并且可实现其他 API 的类库。示例:.NET Framework 基类库、.NET Core 基类库
可选择包含一个或多个应用程序框架。示例:ASP .NET、Windows 窗体和 Windows Presentation Foundation (WPF) 包含在 .NET Framework 和 .NET Core 中
可包含开发工具。某些开发工具在多个实现之间共享
.NET 体系结构
https://docs.microsoft.com/zh-cn/dotnet/standard/components
.NET Core 平台
coreclr:
https://github.com/dotnet/runtime
包含 garbage collector, JIT compiler, primitive data types and low-level classes
asp .net core
.net core 平台下的一个 web 应用框架:
https://github.com/dotnet/aspnetcore
Extensions(用于控制台和 web)
ASP .NET CORE (Web Application Framework)
Entity Framework Core (ORM 框架)
2.1.4 web api 示例
安装 SDK
https://dotnet.microsoft.com/download/dotnet-core/3.1
新建 web api 示例
dotnet new webapi -n HelloApi
启动程序
dotnet run
课程链接
https://appsqsyiqlk5791.h5.xiaoeknow.com/v1/course/video/v_5f39bdb8e4b01187873136cf?type=2

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。
如有任何疑问,请与我联系 (MingsonZheng@outlook.com) 。
.NET 云原生架构师训练营(模块二 基础巩固 引入)--学习笔记的更多相关文章
- .NET 云原生架构师训练营(建立系统观)--学习笔记
目录 目标 ASP .NET Core 什么是系统 什么是系统思维 系统分解 什么是复杂系统 作业 目标 通过整体定义去认识系统 通过分解去简化对系统的认识 ASP .NET Core ASP .NE ...
- .NET 云原生架构师训练营(对象过程建模)--学习笔记
目录 UML OPM OPM优化 UML 1997年发布UML标准 主要域 视图 图 主要概念 结构 静态视图 类图 类.关联.泛化.依赖关系.实现.接口 用例视图 用例图 用例.参与者.关联.扩展. ...
- .NET 云原生架构师训练营(设计原则&&设计模式)--学习笔记
目录 设计原则 设计模式 设计原则 DRY (Don't repeat yourself 不要重复) KISS (Keep it stupid simple 简单到傻子都能看懂) YAGNI (You ...
- .NET 云原生架构师训练营(责任链模式)--学习笔记
目录 责任链模式 源码 责任链模式 职责链上的处理者负责处理请求,客户只需要将请求发送到职责链上即可,无需关心请求的处理细节和请求的传递,所以职责链将请求的发送者和请求的处理者解耦了 何时使用:在处理 ...
- .NET 云原生架构师训练营(模块一 架构师与云原生)--学习笔记
目录 什么是软件架构 软件架构的基本思路 单体向分布式演进.云原生.技术中台 1.1 什么是软件架构 1.1.1 什么是架构? Software architecture = {Elements, F ...
- .NET 云原生架构师训练营(权限系统 RGCA 架构设计)--学习笔记
目录 项目核心内容 实战目标 RGCA 四步架构法 项目核心内容 无代码埋点实现对所有 API Action 访问控制管理 对 EF Core 实体新增.删除.字段级读写控制管理 与 Identity ...
- .NET 云原生架构师训练营(模块二 基础巩固 敏捷开发)--学习笔记
2.7.1 敏捷开发 敏捷介绍 敏捷的起源 敏捷软件开发宣言 敏捷开发十二原则 生命周期对比 敏捷开发的特点 敏捷的发展 敏捷的核心 敏捷的起源 2001年,17个老头子在一起一边滑雪,一边讨论工作, ...
- .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 介绍和基础)--学习笔记
2.5.1 MongoDB -- 介绍 mysql vs mongo 快速开始 mysql vs mongo 对比 mysql mongo 数据存储 table 二维表结构,需要预先定义结构 json ...
- .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 问答系统)--学习笔记
2.5.6 MongoDB -- 问答系统 MongoDB 数据库设计 API 实现概述 MongoDB 数据库设计 设计优化 内嵌(mongo)还是引用(mysql) 数据一致性 范式:将数据分散到 ...
- .NET 云原生架构师训练营(模块二 基础巩固 Scrum 团队)--学习笔记
2.7.3 Scrum 团队 理想的环境 团队章程 如何组建 Scrum 团队 产品待办事项列表 用户故事 敏捷开发流程 理想的环境 5-9人 100% 跨职能 在一起 自组织 自组织 目标 授权 沟 ...
随机推荐
- 浅谈 Docker 网络:单节点多容器
1.同网段多容器访问 这一节将对 Docker 多容器网络进行讨论,构建容器网络示意图如下:
- Logback 实现日志链路追踪
本文为博主原创,未经允许不得转载: 在开发过程中,经常会使用log记录一下当前请求的参数,过程和结果,以便帮助定位问题.在并发量下的情况下,日志打印不会剧增,可以很快就能通过打印的日志查看执行的情况. ...
- Java 如何将Excel转换为TXT文本格式
TXT文件是一种非常简单.通用且易于处理的文本格式.在处理大规模数据时,将Excel转为TXT纯文本文件可以提高处理效率.此外,许多编程语言和数据处理工具都有内置的函数和库来读取和处理TXT文件,因此 ...
- Go-GC
- [转帖]iptables ip_conntrack_max 调整
https://www.diewufeiyang.com/post/583.html 一.概念 ==================== -允许的最大跟踪连接条目:CONNTRACK_MAX(默认值是 ...
- [转帖]Innodb存储引擎-锁(数据库锁的查看、快照读&当前读、MVCC、自增长与锁、外键与锁、行锁、并发事务的问题、阻塞、死锁、锁升级、锁的实现)
文章目录 锁 lock 与latch 读锁/写锁/意向锁 INNODB_TRX/INNODB_LOCKS/INNODB_LOCK_WAITS 一致性非锁定读(快照读) 一致性锁定读(当前读) MVCC ...
- [转帖]docker build 中的 -f 选项
https://www.jianshu.com/p/06c35fd299b7 需要注意的是,在 docker build 命令接收的参数中,提供给 docker build 命令的 -f 选项应该 D ...
- [转帖]面对龙芯3A5000的逼迫,3A4000要为生存抗争!
https://baijiahao.baidu.com/s?id=1709233817860985518&wfr=spider&for=pc 龙芯3A5000是龙芯中科自主设计的最 ...
- [转帖]linux 下 {}大括号的用法
我们平时使用Linux的时候经常遇到这样一个问题,举例有这样一种情况:执行命令 $ cp /etc/apt/sources.list /etc/apt/sources.list.bak 这里面有个问题 ...
- [转帖]SpecCPU2017 测试cpu性能
https://www.bbsmax.com/A/GBJrxP1Ed0/ SpecCPU介绍见: https://blog.csdn.net/qq_36287943/article/details/1 ...