开发者

Authenticated user and multiple requests (IIS7 MVC3)

开发者 https://www.devze.com 2023-03-08 04:00 出处:网络
This is one of those questions that maybe should go so serverfault, but then maybe there is a code-level solution.

This is one of those questions that maybe should go so serverfault, but then maybe there is a code-level solution.

Anyway, here is the question. I have a regular MVC3 application which requires user login to access (uses the Authorize tag on most of the actions). I also have a Silverlight object within the application that makes HTTP GET calls to a controller action which returns an image (in fact this is a map tile). This particular controller action has no authorize开发者_StackOverflow tag, and is therefore public.

The Silverlight component runs slow or just blocks, because the MVC application can apparently process only ONE request at a time, as confirmed by firebug. This means that the map tiles can be served only one after the other. Moreover, regular (non-map-related) requests are enqueued too, and everything times out after a while.

So to make a test, I setup another website with the same document root, and I instructed the Silverlight component to read tiles from there. Now tiles ARE requested concurrently and it runs smoothly.

So, is there any way to resolve this situation and use one site only?


If you are using Session on the server action that would explain why requests are queued. Because the Session is not thread safe ASP.NET serializes all requests from the same session and executes them sequentially.

0

精彩评论

暂无评论...
验证码 换一张
取 消