Проблема с COM+DLL в IIS 6.0

В IIS 6 есть библиотека COM +, поддерживающая классическое приложение ASP. Мы успешно отладили до такой степени, что мы знаем, что DLL вызывает зависания в рабочем процессе (вызов объекта никогда не возвращается). Какие варианты конфигурации существуют для исправления этой проблемы?

2 ответа

Решение

Решение, которое мы нашли, заключалось в том, чтобы ограничить время, в течение которого COM+ будет позволять запускать вызов, а затем завершать его.

Мы нашли это событие в журнале событий, который выдал его:

Средняя продолжительность звонка превысила 10 минут. Если это не ожидаемое поведение, см. Статью 910904 в базе знаний Майкрософт по адресу http://support.microsoft.com/ для получения подробных сведений о том, как использовать функцию автоматического извлечения COM+ для автоматического создания файлов дампа и / или прекращения процесса, если проблема возникает снова. Идентификатор серверного приложения: {20D49551-DF30-4A60-B553-CAD7B97F2153} Идентификатор экземпляра серверного приложения: {45DB1F97-8995-481C-94EE-CA891E446202} Имя серверного приложения: <-REDACTED->

Что приводит нас к этому кб.

Затем мы изменили настройки в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3\AutoDump в соответствии с kb. Проблема все еще возникает, но теперь она не вешает весь сервер, только один пользователь зависает.

Вы пробовали работать в режиме совместимости IIS5?

  1. Щелкните правой кнопкой мыши свойства на узле "Веб-сайты" в пользовательском интерфейсе IIS Manager.
  2. Выберите вкладку "Сервис" на странице свойств
  3. Будет установлен флажок, управляющий тем, запускает ли IIS6 "служба WWW в режиме изоляции IIS5" или нет. Проверьте, чтобы IIS6 работал в режиме изоляции рабочих процессов IIS5.
Другие вопросы по тегам