В чем разница в производительности между HttpModule и Global.aspx?

Я создал веб-приложение, в котором я использую модуль, который перенаправляет без URL-адресов "www" ( http: //пример. ru /) с URL-адресами "www" ( http://www.example.com/). Но так как я на сервере общего хостинга, где у меня нет разрешения на реализацию HttpModule, я попробовал тот же код модуля с файлом Global.asax. Это работает!

Я использовал следующее событие (Application_BeginRequest ()) для реализации моей функциональности HttpModule.

void Application_BeginRequest()
{
  //module code
}

Модуль и приложение работают хорошо и правильно из файла Global.asax, но я беспокоюсь о производительности.

Почему мы используем HTTPModules в asp.net Если мы можем реализовать то же самое с помощью файла Global.asax. Есть ли различия в производительности между обоими. Или о какой-либо разнице, о которой мне нужно беспокоиться при использовании файла Global.asax вместо HttpModule?

Пожалуйста, объясните!

7 голосов | спросил Prashant 21 FebruaryEurope/MoscowbSat, 21 Feb 2009 18:03:53 +0300000000pmSat, 21 Feb 2009 18:03:53 +030009 2009, 18:03:53

2 ответа


0

Global.asax наследуется от HTTPApplication, а HTTPModules должны реализовывать IHTTPInterface.
Метод Init HTTPModules возвращает переданный объект HTTPApplication.
В методе Init вы можете подключиться к событиям HTTPApplication.

Я бы порекомендовал использовать HTTPModules везде, где вы можете.
Особенно если вы создаете термоусадочное программное обеспечение, где клиент может заменить ваш global.asax своим собственным.

ответил Kb. 21 FebruaryEurope/MoscowbSat, 21 Feb 2009 18:21:15 +0300000000pmSat, 21 Feb 2009 18:21:15 +030009 2009, 18:21:15
0

Разницы практически нет. Смысл HTTPModules для ясности и разделения. Часто люди направляют запрос через несколько HTTPModules, чего вы не можете получить с global.asax.

ответил FlySwat 21 FebruaryEurope/MoscowbSat, 21 Feb 2009 18:07:25 +0300000000pmSat, 21 Feb 2009 18:07:25 +030009 2009, 18:07:25

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132