Генерация файла в фоновом режиме на основе запроса пользователя - PullRequest
4 голосов
/ 02 апреля 2012

У меня есть веб-приложение на C # (MVC1, .NET 3.5) с функцией генерации отчетов.Мне было интересно, есть ли у кого-нибудь предложения по реализации следующего сценария:

  1. Зарегистрированные пользователи нажимают на кнопку отчета и переходят к просмотру других частей сайта ИЛИ просто выходят из системы
  2. Как только отчет закончен, он отправляется пользователю по электронной почте

Основной вопрос - как мне создать отдельный поток на сервере, который это сделает?Если многопоточность не подходит, пожалуйста, не стесняйтесь делать другие предложения.Типичное время для создания отчета может быть более 10 минут.Кроме того, эта функция редко будет использоваться более чем одним пользователем за раз, поэтому я представляю что-то по пути «постановки в очередь» функции и позволяю ей выполняться в фоновом режиме.

Спасибо за вашу помощь!

Ответы [ 2 ]

4 голосов
/ 02 апреля 2012

Я предлагаю создать службу Windows, которая опрашивает базу данных на предмет создания отчетов, генерирует их и отправляет по электронной почте. Специфика отчета вводится пользователем на веб-сайте, и веб-сайт просто сохраняет эту информацию в базе данных.

0 голосов
/ 02 апреля 2012

Рассматривали ли вы использование Microsoft Windows HPC Server 2008 .. Это идеально подходит для вашего случая использования, или вы можете придерживаться рутины и написать службу Windows, которая сделает это за вас. Но если вы можете себе это позволить, я бы порекомендовал прыгнуть на подножку HPC ..

Вы можете начать читать об этом здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...