Программирование в IIS


Загрузка в COM+ с помощью строки Constructor


ConfigSeat.dll можно скопировать в среду сервера и разместить в приложении COM+, заменив предыдущую версию ConfigSeat.dll. Приложение COM+ в службах компонентов может заблокировать DLL. После отключения приложение в службах компонентов библиотека DLL освобождается для удаления. Если библиотека DLL участвует в работе веб-приложения, то веб-сервер не будет использовать класс clsChair после удаления классов в DLL из приложения COM+.

Сейчас мы выполним загрузку новой версии clsClass в приложение COM+ New ConfigSeatWeb.

  1. В консоли управления службами компонентов удалите старую версию ConfigSeat.clsClass, щелкнув правой кнопкой мыши на компоненте и выбрав Delete (Удалить).
  2. Добавьте новую версию компонента так же, как и первую версию, с помощью мастера установки компонентов COM+ (COM+ Component Install Wizard ).
  3. По окончании работы с мастером щелкните правой кнопкой мыши на классе в консоли управления Component Services и выберите Properties (Свойства), чтобы открыть окно свойств для класса ConfogSeat.clsClass.
  4. Откройте вкладку Activation (Активация) и отметьте опцию Enable Object Construction (Включить конструирование объекта). Затем введите текст, который должен получить класс от подпрограммы события IObjectConstruct_Construct, приведенной в листинге 1.4. В классе ConfigSeat.clsClass строка конструктора содержит строку подключения ADO для получения доступа к информации в базе данных (см. рис. 1.18).
  5. Убедитесь, что класс clsChair загружен, выполнив на нем быстрый модельный тест. Тестовая структура проясняет функциональность класса внутри новой среды. Исполняемый файл скопируйте на узел и запустите. Выполните более простой тест с помощью DescribeChair.asp (см. листинг 1.2), добавив несколько новых вызовов функций для нагрузки компонента. В листинге 1.13 приведена расширенная версия файла DescribeChair.asp с именем DescribeChairFinal.asp.

Листинг 1.13. DescribeChairFinal.asp used to demonstrate added interface of clsChair. (html, txt)

Запустите тест нагрузкой из утилиты Microsoft Application Center Test, и вы увидите, что работа приложения ASP – COM – база данных требует больше ресурсов, чем простое приложение ASP – COM. Предыдущая версия clsChair не предусматривает взаимодействия с базой данных, и база данных располагается на том же сервере, где расположены ASP и COM-объект clsChair. При моделировании одновременной работы 100 пользователей в течении 5 минут выяснилось, что приложение способно поддерживать среднюю нагрузку, равную 45 запросам на страницы в секунду.

На рисунке 1.17 показано окно служб компонентов, отображающее состояние предыдущего теста. В тесте для предыдущей версии clsChair заголовки Call и Call Time не регистрировали никаких значений, кроме 0. В последней версии clsChair поле In Call стабильно отображало значения от 0 до 1, а поле Call Time стало равным 15 мс. Очевидно, что производительность компонента заметно снизилась по сравнению с проведенным ранее тестом. Как видите, дополнительная функциональная нагрузка, связанная со считыванием информации из базы данных, снижает эффективность работы веб-приложения.




Начало  Назад  Вперед



Книжный магазин