ORM使用EF6,如題:有沒有更好的建議或者方式去每5條資料開一條執行緒更新資料?
邏輯例如:資料庫有1000條資料需要更新,但是這1000條資料需要請求第三方介面或者到結果后才能更新資料,而且需要定時更新,每隔3s就要完這1000條資料
uj5u.com熱心網友回復:
急急急,在線等uj5u.com熱心網友回復:
這種業務是合理的嗎?不是應該 需要時才更新嗎?假設需要時 先判斷現有資料是否在一個更新周期內 如果已經更新則取用。不在一個更新周期則請求更新。話說 第三方介面 是第三方 不可控吧。uj5u.com熱心網友回復:
異步任務可以使用Task.Run(()=>{
........
});來封裝和啟動。如果內部代碼也是異步的,在()前邊加上 async 關鍵字即可。至于說資料庫更新,其實關系資料庫通常是高效率的系統的瓶頸,因為關系資料庫服務器會自動啟動資料的事務保護,至少在記錄級別具有寫鎖,不可能允許你去并發修改相關的資料記錄,所以要想真正研發高性能多任務系統,通常應該先學一些分布式并發的框架。例如 .net 的 Orlean。
uj5u.com熱心網友回復:
實作高性能的系統的設計,是基于“分布式網路物件快取服務”的概念。有許多人拿著關系資料庫“增刪改查”地概念就來接活兒了。其實不成。真正的高性能的系統的持久化資料是不落地的,而且性能比關系資料庫高幾百倍,而且自動管理幾十臺、幾百臺服務器(當然只有一臺服務器也是一樣)上的上億并發物件。注意是“物件”而非資料庫記錄。uj5u.com熱心網友回復:
現在是怎么實作的啊轉載請註明出處,本文鏈接:https://www.uj5u.com/net/29713.html
上一篇:開源版禪道無法匯入缺陷怎么辦呢?
