Хостинг обслуживающих веб-страниц в Windows в процессе - PullRequest
0 голосов
/ 26 сентября 2011

В настоящее время я пишу веб-интерфейс для некоторых проприетарных серверных программ.Сервер свободно основан на компонентах MEF, написанных как отдельные сборки, которые служат модулями.Веб-интерфейс будет обслуживать свои страницы как часть одного из модулей, и желательно, чтобы он выполнялся «в процессе», чтобы сбой модуля не поставил под угрозу весь сервер.

Я работаю над плюсами и минусами различных подходов к архитектуре внешнего интерфейса.У меня есть следующие варианты:

  1. Обслуживание страниц HTML и обработка команд из службы WCF Restful.Используйте WebServiceHost, который запускается при инициализации модуля.

  2. Используйте IIS 7.5 Express для настройки веб-сервера для определенного каталога.

У меня есть прототип № 1, но недостатком является то, что мне придется делать много кода инфраструктуры для обработки URL-адресов, создания шаблонов и так далее.Прямо сейчас я подаю страницы как встроенные ресурсы.У меня нет возможности использовать такие вещи, как ASP.NET MVC.

Мне любопытно узнать # 2, потому что, хотя IIS представляет большую зависимость, все преимущества ASP.NET MVC и другой инфраструктуры Microsoft (например, Razor) легко доступны.

Мои вопросы:

  1. Есть ли недостатки в работе IIS Express в процессе?

  2. Каковы подводные камни моего первоначального подхода при запуске веб-службы WCF RESTful.

  3. Существуют ли другие легковесные контейнеры веб-сервера, которыми я могу воспользоваться, обладающие гибкостью ASP.NET для управляемых шаблонами страниц и взаимодействия с базой данных?

  4. Любое дополнительное понимание / опыт, если вы пробовали что-то подобное.

1 Ответ

1 голос
/ 26 сентября 2011

Если у каждого модуля будет свой «веб-сервер», вы можете использовать OpenRasta Server в каждом модуле для создания остальных конечных точек.

С несколькими конечными точками, я полагаю, вам придется настроить несколько номеров портов, которые могут иметь последствия для брандмауэра, если это приложение для доступа в Интернет.

Брайан

...