我有一个基于ASP.NET服务器的单页Web应用程序,它执行多个功能,其中一个需要从第三方API访问数据。应用程序使用这些数据向用户提供建议。c#数据库在后台
当用户尝试在页面上执行与API中的数据无关的简单操作时,页面会花费大量时间加载。毕竟,应用程序每调用一次页面都会调用API - 我需要解决这个问题。
为了避免缓慢加载的挫折因素,我知道我可以依靠像jQuery和AJAX这样的工具来加速客户端。然而,其他页面方法执行速度很快,所以当只有一个方法调用被指责时,我看不到将页面上的所有内容转换为客户端代码的价值。
我并不总是需要来自外部API的实时数据,所以我的天生本能就是在x
分钟之后,将一个定时器方法放在一起发送回传或页面加载数据。但是这种方法似乎太粗暴了。有没有更好的方法来完成这个目标?
API数据存储在数据库中,作为API和网页之间的中间人。应用程序是否可以每分钟(独立于页面加载)调用API,然后在用户的操作或页面加载时提供数据,从而允许耗时的API方法在后台运行而不会阻碍应用程序?
太宽泛。这里只允许具体问题。 –
是的,可以有一个执行任务的后台进程。 Google搜索将向您展示现代ASP.NET Web应用程序可以使用的一种或两种方法,但个人而言,我更喜欢经过时间考验的完全独立应用程序的方法,并将Web应用程序仅仅作为Web应用程序。像Windows服务或预定的控制台应用程序可以从外部服务中获取数据并定期更新数据库。 – David