0

我有一个场景,当我开始运行 Web 服务时,我必须从 SQL Server 加载数据。后来我必须将这些数据用于我的应用程序,而不是每次都从数据库中访问它。除此之外,这些数据应该每隔一小时刷新一次,而不影响后端的网站运行。如果你们中有人遇到过这种情况,请告诉我解决方案。顺便说一句,我正在为我的前端使用 asp.net Web 服务、SQL 服务器数据库和 DNN。提前致谢。

4

2 回答 2

0

在 Global Asax,Application start 事件中,您可以加载数据集中的所有数据。并且通过使用Sql Cache依赖,你可以每小时刷新一次数据。但是不建议加载整个数据。这样你的内存会被填满。会有性能下降。

http://www.codeproject.com/Articles/14976/ASP-NET-Caching-Dependencies

于 2013-04-25T06:14:30.030 回答
0

预加载所有数据并不是一个好的做法,因为这样数据库就失去了它的用途。对于一些很少更新但经常需要的数据可能没问题,但绝对不是数据库中的所有数据。

至于数据的加载,您可以使用其他人已经建议的应用程序启动事件。

关于缓存 - 使用 Application 对象使此数据可用于应用程序的所有部分,并为其添加一个属性,以保持上次更新的时间。然后只需创建单独的服务,该服务将每 X 分钟检查一次最后更新时间,并在时间到来时刷新数据。

于 2013-04-25T08:53:46.180 回答