簡單五步驟:ASP.NET Core整合Hangfire來排程更新口罩剩餘數量資料
口罩API系列(一)(二)(三)就資料面而言,已經處理的差不多了,不過,專案還有改善的空間。
- 專案第一次啟動時,需要初始化資料庫資料。目前實作的程式碼而言,我們每次請求都會重覆檢查一次。
- 每次請求都會重覆檢查一次資料源是否有更新。
以關注點分離來看,目前的 MaskController
工作有點雜且職責不夠單一。第一個問題,如果從 EF Core 下手,可能是實作 SeedData 方式來解決,但比較麻煩的事情是資料來源是網路上,而且資料內容不固定。第二點比較麻煩。正在構思時,剛好好友 Demo 貼文說 dotblogs 改版採用 Hangfire 來處理排程事件。疑,Hangfire 不就是這個需求的最佳解嗎!
「使用Hangfire處理ASP.NET MVC/Web API長時間與排程工作」多年前已經用的非常開心。這次讓我們在 ASP.NET Core Web API 來整合 Hangfire 來解決我們碰到的問題。