Сколько экземпляров объекта Application может работать на приложение - PullRequest
0 голосов
/ 14 июля 2011

Я читал следующий пост Как правильно использовать IHttpModule *

Теперь давайте подумаем о самом слове. Пул приложений. Да бассейн. Это означает, что определенное веб-приложение работает несколько Экземпляры HttpApplication в одном пуле. Да несколько. В противном случае это не будет называться пул. «Сколько?», Спросите вы. Это не действительно важно, если вы знаете, что их может быть больше одного. Мы доверять IIS, чтобы сделать свою работу. И он, очевидно, делает это так хорошо, что сделал этот факт совершенно прозрачен для нас, разработчиков, следовательно, не так много полностью понять его внутреннюю работу. Мы рассчитываем на его надежность предоставить услугу. И это так. Каждое из этих HttpApplication экземпляры в пуле хранят свой собственный список HTTP-модулей, которые он использует с каждым запросом он обрабатывает.

*

У меня есть вопрос, при каком сценарии несколько экземпляров объекта Application могут работать для одного приложения. До сих пор я знал, что для каждого приложения существует один объект приложения. Поэтому мне любопытно узнать, правда ли, что несколько экземпляров могут работать на одно приложение и как это решается?

1 Ответ

4 голосов
/ 14 июля 2011

Каждый HttpApplication экземпляр объекта уникален для одного запроса .Если ваш сайт обрабатывает несколько запросов параллельно, у каждого должен быть свой экземпляр HttpApplication.Этот объект имеет информацию о состоянии каждого запроса, которая не должна изменяться в течение срока действия запроса (включая тело запроса и ответа!)

Экземпляры объединяются, как описано в статье.Каждый из них будет повторно использоваться для обслуживания нескольких последующих запросов, вплоть до предела, установленного для пула приложений, и затем ему будет разрешено угасать.

Обратите внимание, что вы специально спрашиваете о HttpApplication.Это отличается от класса System.Windows.Forms.Application, который фактически является одноэлементным классом, который существует только один раз для каждого приложения.

...