Аутентифицированный пользователь и несколько запросов (IIS7 MVC3) - PullRequest
1 голос
/ 23 мая 2011

Это один из тех вопросов, которые, возможно, должны быть решены таким образом, если возникнет ошибка сервера, но, возможно, есть решение на уровне кода.

В любом случае, вот вопрос. У меня есть обычное приложение MVC3, для доступа к которому требуется логин пользователя (в большинстве действий используется тег Authorize). У меня также есть объект Silverlight в приложении, который выполняет HTTP-вызовы GET для действия контроллера, которое возвращает изображение (на самом деле это фрагмент карты). Это конкретное действие контроллера не имеет тега авторизации и поэтому является общедоступным.

Компонент Silverlight работает медленно или просто блокируется, потому что приложение MVC, очевидно, может обрабатывать только ОДИН запрос за один раз, что подтверждается firebug. Это означает, что плитки карты могут быть поданы только один за другим. Кроме того, обычные (не связанные с картой) запросы тоже ставятся в очередь, и через некоторое время все заканчивается.

Итак, чтобы провести тест, я настроил другой веб-сайт с тем же корнем документа и дал указание компоненту Silverlight прочитать оттуда плитки. Теперь плитки запрашиваются одновременно, и они работают гладко.

Итак, есть ли способ разрешить эту ситуацию и использовать только один сайт?

1 Ответ

2 голосов
/ 23 мая 2011

Если вы используете Session на сервере, это объясняет, почему запросы помещаются в очередь.Поскольку сеанс не является потокобезопасным, ASP.NET сериализует все запросы из одного сеанса и выполняет их последовательно .

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