-3

情况 1:
用户在 ASP.NET 页面上创建了一个文件,可能是通过单击一个按钮。
之后,用户可能会下线(离开站点)
文件将在 15 分钟后自动删除。

情况2:
用户A点击一个按钮

Application["count"] = (int)Application["count"] + 1;

之后,在 10 秒内,如果有其他用户点击相同的按钮。该值将增加。

Application["count"] = (int)Application["count"] + 1;

让我们说,在第 6 秒,没有更多用户访问该站点。在第 10 秒,服务器会自动执行一些动作来做某事。

我可以知道该怎么做吗?
有什么提示吗?或我可以开始查看/学习的文章?

非常感谢你。

4

2 回答 2

2

这是网站的常见问题,正确的答案是构建一个单独的 Windows 服务来执行后台任务。

有几种聪明的技巧可以安排在 IIS 工作进程中完成的事情,但它们都是不安全的,因为

  1. 应用程序池可能随时被回收(即重新启动),从而丢失内部状态,例如预定事件。
  2. 应用程序池可能由于不活动而关闭。

您的 Windows 服务可以公开由网站代码在内部调用的 WCF 服务以安排工作或从公共数据库中提取工作项。

于 2013-01-12T10:08:18.223 回答
0

我找到了一些锻炼方法。对于那些面临同样问题的人,您可以阅读以下内容:
ASP.NET 中的简单后台任务
https://blog.stackoverflow.com/2008/07/easy-background-tasks-in-aspnet/

于 2013-01-12T10:20:30.100 回答