Я смотрю, как добавить многофайловую загрузку в наше ASP.NET MVC
веб-приложение. Я собираюсь использовать сторонний загрузчик мультифайлов Aurigma для обработки фактической загрузки.
Как только каждый файл получен веб-сервером на 100%, его необходимо проверить на следующее
- это изображение или видео.
- если это изображение, нужно ли изменять его размер? если да, измените размер.
- если это видео, нам нужно перекодировать его во флэш-память (к сожалению .. принесите html5 :))
- наконец, магазин на S3 amazon.
Так что я знаю, как выполнить большинство шагов с 1 по 4 - это не вопрос.
У меня вопрос: как мне на самом деле обрабатывать этот рабочий процесс ? Особенно, если я получаю большую часть мультимедиа одновременно -> в конце концов, это многофайловый загрузчик :) Я не хочу, чтобы много медиа обрабатывалось одновременно (например, 5 видео получаются закодировано для вспышки ..).
Поэтому я подумал, что у меня может быть установлено MSMQ
, и когда каждый файл будет получен на 100%, вставьте его в MSMQ
. Таким образом, только один предмет получает обработанных за один раз. Стоимость этого заключается в том, что при большой обработке дорогой очередь может фактически начать получать несколько элементов ... и с момента загрузки элемента будет некоторый период ожидания на сайт, пока он не будет обработан на 100%. Мы можем легко обработать это в пользовательском интерфейсе, чтобы сказать им, что это еще не закончено.
Итак - это звучит как хороший способ справиться с этой проблемой?
Во-вторых, это в сценарии веб-фермы .. поэтому необходимо учитывать установку / развертывание / обслуживание.
Хотелось бы увидеть, что думают другие люди.