2015-07-30 2 views
0

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

Моей идеей для решения этого является приложение MVC, которое связывается с сервисом Windows, и эта служба запускает процесс генерации файлов.

У меня есть некоторые опасения по поводу этого.

  1. основываясь на своем опыте, вы считаете, что это лучший способ для решения проблемы?

  2. Каков наилучший и простой способ связи веб-приложения и службы Windows? это одностороннее общение, Интернет для обслуживания.

  3. Об услугах окон; должен ли сервис выполнять все процессы? или, может быть, лучше, если служба выполняет только консольные приложения, которые генерируют разные типы файлов.

Я очень ценю вашу помощь.

ответ

1

Поскольку веб-интерфейс API может быть самообслуживанием в любом процессе, и служба Windows не является исключением, я бы рекомендовал размещать как HTTP API, так и длинные процессы в одной и той же службе Windows.

Если вы разрабатываете и внедряете эту службу Windows с использованием лучших практик, это должно быть хорошим решением, и вы должны подумать о том, насколько легко будет развертывание вашего решения, поскольку вам больше не требуется IIS.

+0

В чем преимущество использования автономного хоста OWIN над консольными приложениями IIS + в этом случае? – Fendy

1

Я бы пошел с IIS. Это из-за его поддержки. Используете веб-сервис для долгого обслуживания фоновых сервисов в течение длительного времени без проблем. Единственная проблема - удалить утилиту по умолчанию. Конечно, ваше приложение должно будет правильно обрабатывать события запуска/остановки.

Смежные вопросы