2011-05-26 47 views
3

服务器上的文件如何从Web服务器下载文件到另一个IIS服务器如何安排使用ASP.NET网页

如的下载我有很多电影文件,我想在我的网站上主持

电影上传到其他网站,我想抓住他们在我自己的网站。

是否可以安排使用ASP.NET网页异步下载服务器上的文件? 我只有FTP访问网络服务器,因为我使用共享主机。

回答

1

如果您使用共享主机,调度任务将会很困难。 您可以实现一个服务页面,在请求时执行下载。此页面将在目标服务器上运行,并从源服务器请求文件列表并继续下载这些文件。服务器执行所有工作,请求服务页面的客户端可以获得服务器正在做什么的简短日志。

接下来在一些其他系统上定期调用服务页面的计划任务。

由于呼叫服务页面的客户端负载非常低,您可以从几乎任何位置(家庭或办公室服务器,智能路由器(dd-wrt),您可以坐在壁橱里甚至某处你的智能手机)。

这种方法的好处在于,您可以通过直接从浏览器访问服务页面,从任何地方手动触发下载。

缺点是,如果完成下载的时间超过了最大请求持续时间,您的请求很可能会被终止。如果发生这种情况,您可能需要查看asynchronous handlers

0

您可以连线任务以在每次页面加载或应用程序启动时运行(并定期回收应用程序池),但ASP.NET并非专门为此类任务设计的。

建议一个服务或命令行工具,可以连接到任务计划程序以便每隔一段时间进行一次下载。

0

1)条目添加到队列中的ASP.Net应用程序 - 无论是MSMQ或数据库表。

2)编写一个从队列中读取并处理每个项目的Windows服务/控制台应用程序。

你也可以用SQL中的ScheduledTask来实现(2) - 其他方式也毫无疑问 - 关键是你把队列放在中间来提供断开和异步。