【问题标题】:Load data when webservices startsWeb 服务启动时加载数据
【发布时间】:2013-04-25 03:56:27
【问题描述】:

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

【问题讨论】:

    标签: sql-server web-services dotnetnuke


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-07
        • 1970-01-01
        相关资源
        最近更新 更多