如何将文件从web服务器下载到其他iis服务器
例如,我有很多电影文件要放在我的网站上
电影被上传到其他网站,我想在我自己的网站上获取它们。
是否可以安排使用ASP.NET网页异步下载服务器上的文件?我只能通过FTP访问web服务器,因为我使用的是共享主机。
发布于 2011-06-01 15:27:41
如果您使用的是共享主机,那么计划任务将会很困难。您可以实现一个服务页面,在请求下载时执行下载。此页面将在目标服务器上运行,并请求来自源服务器的文件列表,然后继续下载这些文件。服务器执行所有工作,请求服务页面的客户端可能只获得服务器正在做什么的简短日志。
接下来,在定期调用服务页面的其他系统上设置一个计划任务。
由于对服务页面的调用在客户端上的负载非常低,因此您可以从几乎任何地方(家庭或办公室服务器、放在柜子里的智能路由器(dd-wrt),甚至是您的智能手机)执行此操作。
这种方法的好处是,您可以通过直接从浏览器访问服务页面,从任何地方手动触发下载。
缺点是,如果完成下载的时间超过了最大请求持续时间,您的请求很可能会被终止。如果发生这种情况,您可能需要研究一下asynchronous handlers。
发布于 2011-05-26 20:48:14
你可以做的一件事是使用窗口服务,即创建窗口服务并在其中添加定时器,这将很容易地解决你的问题。
这里有一篇好文章:Combine Web and Windows Services to Run Your ASP.NET Code at Scheduled Intervals
发布于 2011-05-26 20:47:58
您可以连接一个任务,使其在每次页面加载或应用程序启动时运行(并定期回收应用程序池),但ASP.NET不是为这种类型的任务设计的。
构建一个可以附加到Task Scheduler的服务或命令行工具,以便每隔一段时间进行下载会更好。
https://stackoverflow.com/questions/6138671
复制相似问题