Entity Framework Performance and What You Can Do About It
傳送門:https://www.simple-talk.com/…/entity-framework-performance…/
很多時候 ORM 慢,不是本身慢,而是使用 ORM 的人犯了幾個不該犯的錯誤,下列列出該注意的事項:
① model還沒給條件,就觸發執行 SQL 的問題
② "N+1" Select 的問題(沒有一次把要用到的關聯資料撈出來)
③ Select * 欄位全撈的問題
④ DataType 不相符的問題
⑤ Miss Index 的問題
⑥ 如何讓查詢計畫 reuse 的問題,例如分頁查詢影響查詢參數的方式
⑦ 批次作業使用 BulkInsert 相關的 API 可以提升 10 倍以上的效能
⑧ 用 AddRange() 取代迴圈裡面的 Add(),搭配AutoDetectChangesEnabled 開關。
※ 範例的效能提升:reduced from 34 seconds down to 85 ms – a 400x speed boost!
⑨ 如果只是要讀資料,沒有要異動,透過 AsNoTracking 關掉 Change tracking。
其他的注意事項,請自行參考文章後半部細節。
#EntityFramework #程式不是會動就好
Search
sql datatype 在 【MS SQL】Data Type | 伍夜黃昏之時 的推薦與評價
前言SQL Server 資料型別(Data Type)也可稱為資料類型,定義資料表欄位能儲存哪種類型資料,以及使用多少位元組來儲存資料,在SQL Server 內可以分 ... ... <看更多>