我有一个 ASP.NET Web 应用程序,它不断监视来自 Delicious 的新 RSS 提要并将结果存储在数据库中。除此之外,我还需要查询数据库以便在需要的地方显示结果。我正在使用计时器事件,以便每 15 分钟对 delicious 的新提要进行索引,这是一个持续的过程。
需要说明的是,我有一个包含 2 个页面的 Web 应用程序: 1.默认,aspx:索引 2. recommendations.aspx : 查询数据库中的推荐
现在我遇到了一些问题:
我将计时器事件放置在 default.aspx 页面中,以便每隔 15 分钟,它会启动事件并开始编制索引。但是,问题是我必须在那个页面上才能索引。理想情况下,我希望此过程在后台运行而不打扰用户。
其次,如果用户必须单击 recommendations.aspx 页面并查询数据库,它将一直等待 localhost..,因为它将忙于索引。
我需要有关设计此系统的正确方法的建议,如果可能的话,请提供建议。
提前致谢
最佳答案
正如您所说的那样,index.aspx
背后的代码只会在页面加载时运行。
您真正想要使用的是某种后台进程——换句话说,Windows 服务。 Windows 服务的进程始终保持运行,因此您可以拥有可以执行轮询等操作的长时间运行的计时器。
有关此的演练在 MSDN 上 here .
关于asp.net - 监控服务器和网站 - 设计问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5817389/