斗爷

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

.net core开发实战(转)

第一章 必备知识

04.StartUp:启动过程:

ConfigureWebHostDefaults
ConfigureHostConfiguration
ConfigureAppConfiguration
ConfigureServices
ConfigureLogging
Startup
Startup.ConfigureServices
Startup.Configure

05.依赖注入

生命周期:

1.单例 Singleton  全局

2.作用域 Scoped : 每一个请求内实例一致,不同请求不一致

3.瞬时,暂时  Transient

06.作用域与对象释放行为:

避免在根容器获取实现了 IDisposable 接口的瞬时服务
避免手动创建实现了 IDisposable 对象,应该使用容器来管理其生命周期

07.Autofac

• 基于名称的注入
• 属性注入
• 子容器
• 基于动态代理的 AOP

08.配置框架

15.选项框架

16.选项框架.热更新

• 范围作用域类型使用 IOptionsSnapshot
• 单例服务使用 IOptionsMonitor

20.结构化日志组件serilog

22.异常处理中间件:区分真异常和逻辑异常

第二章 微服务实战篇

26.工程结构概览

领域模型层  基础设施层  应用层  共享层

27.定义实体

28.工作单元模式

29.定义仓储

30.领域事件

31.APIController

32.33.集成事件

34.35.MediatR

36.HttpClientFactory:向外请求的最佳实践

37.38 gRPC:内部服务间通讯利器

39.Polly:用失败重试机制提升服务可用性

• 失败重试
• 服务熔断
• 超时处理
• 舱壁隔离
• 缓存策略
• 失败降级
• 组合策略

40.Polly:熔断慢请求避免雪崩效应

• 被动策略(异常处理、结果处理)
• 主动策略(超时处理、断路器、舱壁隔离、缓存)

41.网关与BFF(区分场景与职责)

BFF:服务于前端的后端  Ocelot

42.网关与BFF(使用JWT来实现身份认证与授权)

JWT:JSON Web Token

43.反跨站请求伪造

1. 通过cookie存储和传递身份信息(不用cookie,用jwt)

2. AntiforgeryToken 来防御

3. 避免使用get

44.防开放重定向攻击

1.使用localredirect来处理重定向(仅限于本站)

2.验证重定向的目标域名是否合法

45.防跨站脚本

对用户提交进行验证,编码;cookie设置为httponly;使用query传递

46.安全:跨域请求

1. 方案相同 ( HTTP/HTTPS ) 2. 主机(域名)相同  3. 端口相同

47.缓存:为不同的场景设计不同的缓存策略

缓存失效:数据不一致

缓存穿透:缓存不存在数据,(缓存数据为null,强制返回一个默认值)

缓存击穿:缓存失效瞬间,大量缓存访问数据库(二级缓存)

缓存雪崩:缓存key大量失效,导致数据库压力(缓存失效时间均匀分布)

MemoryCache,StackExchangeRedisCache,ResponseCaching(与身份认证冲突),EasyCaching

posted on   斗哥哥  阅读(886)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2017-06-07 sql例子
点击右上角即可分享
微信分享提示