ASP.NET принимает решения о планировании запросов на основе SessionID? - PullRequest
1 голос
/ 28 апреля 2010

Я знаю, что правильно реализованный SessionStateStoreProvider поддерживает монопольную блокировку данных сеанса на время запроса. Однако, учитывая, что несколько запросов могут поступать одновременно (например, через IFRAME), все, кроме одного, смогут продвигаться вперед. Все остальные запросы будут блокироваться на некоторое время и уменьшать количество рабочих потоков, доступных за это время.

Похоже, что если ASP.NET "заглянул" на идентификаторы сеанса в запросах на раннем этапе, он мог бы избежать одновременного выполнения запросов, которые были в одном сеансе. Это улучшит пропускную способность под нагрузкой для страниц, которые не хотят отказываться от использования IFRAME.

Это кажется достаточно правдоподобным, чтобы это могло быть правдой.

1 Ответ

0 голосов
/ 14 июня 2010

В соответствии с главой 10 «Повышение производительности веб-служб, управление состоянием», MSFT p & p, май 2004 г. ( текст ссылки ):

"[...] Если вы сохраняете данные в состоянии сеанса, вызовы веб-служб, выполняемые одним клиентом, сериализуются средой выполнения ASP.NET. Два одновременных запроса от одного клиента помещаются в очередь в одном потоке в Интернете. сервис [...] "

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