2011-05-26 22 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) - 其他方式也毫無疑問 - 關鍵是你把隊列放在中間來提供斷開和異步。