【发布时间】:2011-03-08 18:10:34
【问题描述】:
我正在考虑向我们的ASP.NET MVC Web 应用程序添加多文件上传功能。我将使用3rd Party Multi-File uploader Aurigma 来处理实际的上传。
一旦每个文件 100% 被 Web 服务器接收,就需要检查以下内容
- 是图片还是视频。
- 如果是图片,是否需要调整大小?如果是,请调整大小。
- 如果是视频,我们需要将其重新编码为 flash(不幸的是.. 带上 html5 :))
- 最后,存储在 S3 amazon 上。
所以我知道如何执行大部分步骤 1 到 4 - 这不是问题。
我的问题是:我应该如何处理这个工作流程?特别是如果我一次获得大量媒体 -> 毕竟,这是一个 多文件 上传器 :) 我不想一次处理大量媒体(例如 5 个视频被编码到闪存..)。
所以我想我可能已经安装了MSMQ,当每个文件都被 100% 接收时,然后将其弹出到MSMQ。这样,一次只有一个项目得到处理。这样做的代价是,如果有很多昂贵的处理,队列实际上可能会开始在其中获取一些项目......并且从一个项目的时间开始会有一些等待时间上传到网站,直到它实际 100% 处理。我们可以在 UI 中轻松地处理它,告诉他们它还没有完成。
那么 - 这听起来像是处理这个问题的好方法吗?
其次,这是在网络农场场景中..因此需要考虑安装/部署/维护。
很想看看其他人的想法。
【问题讨论】:
标签: architecture file-upload queue msmq