开发者

Basic question about request queues in IIS / ASP.Net

I have an ASP.Net application running under IIS 6. A simple page has two radio buttons and a submit button. If I select radio button "A" and submit the page, a lengthy PDF file is generated, which takes about a minute to build. If I select radio button "B", a small PDF is generated. (In both cases the PDF is written o开发者_运维知识库ut to the Response object and it opens in my browser.)

If I select radio button "A" and submit, then hit the red X in my browser to stop the current request, then select radio button "B" and resubmit, the page still takes a long time to process my request.

No doubt my first request is still being processed on the server, but I was wondering how IIS and/or ASP.Net are queuing my requests so that fair server use is guaranteed among all users. Am I roughly correct in assuming something like this happens, and if so, how is it done?


You're probably experiencing session locking. Try running your experiment in multiple browsers, i.e. instead of stopping the browser and resubmitting, fire both requests in separate browsers (e.g. Firefox and Chrome) which will use separate session and therefore will not block.

See Concurrent Requests and Session State for rationale and workarounds.

0

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜