這篇文章的主要內容來源于.NET檔案,由于機器翻譯的中文版實在不像人話,于是重新翻譯了一下,保留了原文中大部分內容,
原文中包含26項知識點,因為內容太多,詳細內容將在后續的文章中慢慢發出來,
原文:ASP.NET Core Performance Best Practices
- 盡量使用快取
- 明確”熱代碼路徑”
- 避免使用阻塞呼叫
- 回傳值使用IEnumerable<T> 或 IAsyncEnumerable<T>
- 減少分配大物件
- 優化資料訪問和I/O操作
- 使用HttpClientFactory而不是直接創建HttpClient
- 保持常用代碼路徑執行效率
- 長時任務放在HTTP Request之外處理
- 減小客戶端資源
- 壓縮回應資料
- 使用最新的ASP.NET Core release版本
- 最小限度使用例外
- 性能與穩定性
- 避免同步讀寫HttpRequest/HttpResponse body
- 優先使用ReadFormAsync而不是Request.Form
- 避免將大請求/回應體讀入記憶體
- 使用同步資料處理API的注意事項
- 不要將IHttpContextAccessor.HttpContext賦值到一個欄位上
- 不要在多個執行緒中訪問HttpContext
- 不要在請求完成之后使用HttpContext
- 不要在后臺執行緒中使用HttpContext
- 不要在后臺執行緒中使用在Controller中注入的服務
- 不要在回應(response)開始之后修改狀態碼或headers
- 不要在開始輸出回應(response)之后呼叫next()
- 使用IIS行程內寄宿部署
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/76635.html
標籤:.NET Core
上一篇:(MyHttpContext._configuration.GetSection("AppSettings:isJava")?.Value == "1"?
