.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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM