Ограничение количества доменов приложений на один рабочий процесс в IIS (и отключение перезапуска доменов приложений) - PullRequest
1 голос
/ 19 сентября 2011

Мое текущее понимание IIS:

Пул приложений поддерживает коллекцию рабочих процессов (процессов операционной системы), в каждом рабочем процессе есть один или несколько доменов приложений.

Моя текущая проблема:

В настоящее время мы использовали сторонний dll в нативном коде, наш управляемый код говорит об этом.

Этот нативный код может быть толькоинициализируется один раз для процесса операционной системы.

Когда у нас имеется более одного домена приложения на рабочий процесс, нативный код разрушается (так как логика инициализации нативного кода вызывается более одного раза для текущего процесса).

Мой идеальный краткосрочный обходной путь (пока эта проблема не будет устранена третьей стороной):

Я хотел бы ограничить количество доменов приложений, запущенных одновременнорабочий процесс к одному.Я также хочу отключить перезапись доменов приложений в рабочих процессах.Это возможно?И если да, то как?

В IIS я не вижу способа ограничить домены приложений, только рабочие процессы.Я также не вижу способа отключить перекрывающуюся переработку доменов приложений, опять же, эта опция существует только для рабочих процессов.

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

Я также понимаю, что это может потребовать некоторого взлома реестра и т. Д., Но это хорошо для временногоОбходной путь.

Любые предложения будут высоко оценены!

1 Ответ

0 голосов
/ 19 сентября 2011

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

Вы боретесь с основными функциями IIS, а также управлением жизненным циклом приложений и мониторингом работоспособности. Чтобы отключить некоторые функции, вы должны зайти в конфигурацию AppPool и настроить его параметры «Переработка» и «Дополнительные», чтобы отключить все связанные функции (я не уверен, что это решит все ваши проблемы). По сути, это плохая идея - пусть IIS самостоятельно выполняет свою работу или размещает приложение и создает собственный мониторинг состояния здоровья.

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