题
我正在编写一个将托管在共享托管环境上的网站。因此,我将无法访问任务计划程序等内容。网站需要每半天执行一次各种检查。在这种情况下执行这些任务的最佳方式是什么?
我能想到的最好的两件事在哪里:
- 每次用户访问我的网站时都会触发该进程 - 执行某种检查以查看该进程上次运行的时间,以及运行该进程的时间是否大于 12 小时。
- 有一些运行进程的隐藏页面,然后让一些外部实体以 12 小时的间隔对该页面执行 ping 操作。
这两种方法看起来都有点笨拙?
解决方案
你可以使用一个小技巧,使用 ASP.NET 缓存.
其他提示
绝对不要使用你的选项#2,除非你有某种保护措施来防止意外运行它。
您也不希望您的处理取决于用户请求。如果您度过了非常缓慢的一天(例如假期加上某处发生大的光纤中断)并且一段时间内没有人访问该网站,会发生什么情况?
不隶属于 StackOverflow