我有一個基於ASP.NET服務器的單頁Web應用程序,它執行多個功能,其中一個需要從第三方API訪問數據。應用程序使用這些數據向用戶提供建議。c#數據庫在後臺
當用戶嘗試在頁面上執行與API中的數據無關的簡單操作時,頁面會花費大量時間加載。畢竟,應用程序每調用一次頁面都會調用API - 我需要解決這個問題。
爲了避免緩慢加載的挫折因素,我知道我可以依靠像jQuery和AJAX這樣的工具來加速客戶端。然而,其他頁面方法執行速度很快,所以當只有一個方法調用被指責時,我看不到將頁面上的所有內容轉換爲客戶端代碼的價值。
我並不總是需要來自外部API的實時數據,所以我的天生本能就是在x
分鐘之後,將一個定時器方法放在一起發送回傳或頁面加載數據。但是這種方法似乎太粗暴了。有沒有更好的方法來完成這個目標?
API數據存儲在數據庫中,作爲API和網頁之間的中間人。應用程序是否可以每分鐘(獨立於頁面加載)調用API,然後在用戶的操作或頁面加載時提供數據,從而允許耗時的API方法在後臺運行而不會阻礙應用程序?
太寬泛。這裏只允許具體問題。 –
是的,可以有一個執行任務的後臺進程。 Google搜索將向您展示現代ASP.NET Web應用程序可以使用的一種或兩種方法,但個人而言,我更喜歡經過時間考驗的完全獨立應用程序的方法,並將Web應用程序僅僅作爲Web應用程序。像Windows服務或預定的控制檯應用程序可以從外部服務中獲取數據並定期更新數據庫。 – David