我正在尋找添加多文件上傳到我們的ASP.NET MVC
網絡應用程序。我將使用3rd Party Multi-File uploader Aurigma來處理實際上傳。這是一個很好的處理/操作文件上傳的架構/設計概念嗎?
一旦每個文件是由web服務器接收到的100%時,它需要被檢查以下
- 是圖像或視頻。
- 如果它是一個圖像,是否需要調整大小?如果是的話,調整大小。
- 如果它是一個視頻,我們需要重新編碼爲閃光燈(不幸的是..帶來HTML5 :))
- 最後,存儲在S3亞馬遜。
所以我知道如何做大部分步驟1到4 - 這不是問題。
我的問題是:我應該怎麼處理這個工作流程?特別是如果我一次得到大量的媒體 - >畢竟,這是一個多文件上傳:)我不想有很多媒體一次處理(例如,5視頻的編碼閃存。 )。
所以我想我可能有MSMQ
安裝,當每個文件獲得100%接收,然後彈出到MSMQ
。這樣,一次只有一件物品得到處理。這樣做的代價是,如果處理中有很多昂貴的處理,隊列可能實際上開始在那裏獲得幾件物品......並且從物品上傳到站點時會有一些等待期,直到它實際上100%被處理。我們可以在UI中輕鬆處理這些信息,告訴他們尚未完成。
所以 - 這聽起來像一個好方法來處理這個問題?
其次,這是在一個網站的場景..所以安裝/部署/維護需要考慮。
很想看看其他人在想什麼。
我必須管理,這就是我目前擁有 - > Windows服務中的文件觀察器。但這是一個支持和維護的噩夢。而線程也是MSMQ可以隔離IMO的一種痛苦。爲什麼將它保存到一個臨時位置,然後觀察那個位置,以及如果我們有更多的文件排隊等等會發生什麼? MSQM爲你做了這一切。但是,是的..你的想法是我追求的 - >想法來解決這個問題:)乾杯! – 2010-06-27 03:39:11
我建議不要將MSMQ用作臨時存儲介質。將文件保存到臨時目錄並提交包含文件位置的隊列消息 - 不要將文件本身存儲在MSMQ中。 – Chris 2010-06-27 03:50:27
因爲........ – 2010-06-27 04:17:52