我需要在后台每15秒运行一次代码,这对服务器没有影响。
我有一张拍卖数据样本表。
--------------------------------------------------------------
AID STARTDATE ENDDATE
-------------------------------------------------------------
1 18-7-2013 12:00 PM 20-7-2013 12:00 PM
2 19-7-2013 12:00 PM 21-7-2013 12:00 PM
3 19-7-2013 01:00 PM 21-7-2013 12:00 PM
4 19-7-2013 01:00 PM 22-7-2013 12:00 PM
我需要检查表格,以获取当前日期大于开始日期的项目, 然后我将通过本地数据库中的拍卖商店的Web请求获取数据,它将每15秒循环一次,直到当前日期大于enddate。 一段时间2拍卖同时开始,然后我需要同时运行两个线程。
对于当前正在运行拍卖模式并存储在我们的数据库中的所有项目,每15秒获取一次更新的最佳方法是什么?
提前谢谢你......
答案 0 :(得分:1)
您无法在ASP.NET / IIS中可靠地执行此操作。默认情况下,整个过程直到收到来自Web服务器的第一个请求才开始,然后整个过程在指定的非活动时间(通常为20分钟)后关闭。如果您需要每15秒运行一个进程,则必须每15秒从客户端初始化一个请求,最有可能使用某种javascript来执行请求。
最佳解决方案是使用与网站分开的Windows服务更新您的拍卖数据库。
答案 1 :(得分:0)
您在哪里托管您的网站?如果您在自己的服务器上,请创建一个cron作业,每15秒向您的后端发出一次请求。
如果您使用云提供商(或没有“云”标语的提供商),他们可能会提供cron作业功能。但它们很少让你实现15秒的间隔,如果它来自不同的站点,一些提供商可能会将其解释为DOS攻击。