msh
msh
Oct 25, 2018
visibility 32233
star star star star star
(0 votes)

How to resolve "The request queue limit of the session is exceeded. System.Web.HttpException at System.Web.SessionState.SessionStateModule.QueueRef"

If you use DXC, this error might hide behind CDN 524 error page, you should check the error in application insight and if it was the case this is the solution.

If you are using episerver with .net 4.7 you might get "The request queue limit of the session is exceeded. System.Web.HttpException at System.Web.SessionState.SessionStateModule.QueueRef" in you log or application Insight. the exprieve will be awefull and you need to clear your cache or use incongnito mode to see the page again.

So what is the cause of the issue?

In the .NET Framework 4.6.2 and earlier, ASP.NET executes requests with the same Sessionid sequentially, and ASP.NET always issues the Sessionid through cookies by default. If a page takes a long time to respond, it will significantly degrade server performance just by pressing F5 on the browser. In the fix, we added a counter to track the queued requests and terminate the requests when they exceed a specified limit. The default value is 50. If the limit is reached, a warning will be logged in the event log, and an HTTP 500 response may be recorded in the IIS log.(https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/retargeting/4.5.2-4.7)

so what is the soloution?  the only suloution I have in mind is to back to previouse behaviour which can be done by installing "Microsoft.AspNet.SessionState.SessionStateModule" NuGet package and adding following settings in web.config

<appSettings>
       <add key="aspnet:RequestQueueLimitPerSession" value="2147483647"/>
       <add key="aspnet:AllowConcurrentRequestsPerSession" value="true" />
</appSettings>
Oct 25, 2018

Comments

Tobias Gladh
Tobias Gladh Nov 18, 2019 02:56 PM

We saw this error in our onPremise solution running 4.7.2 but FYI for anyone looking into this error, you don't need to install the Nuget package to be able to set the RequestQueueLimitPerSession. Infact installing the package makes the login to Episerver to stop working (at least ours Identity-based solution stopped). As the Microsoft doc states you only need the appSettings setting to reset the limit

error Please login to comment.
Latest blogs
Composition Over Inheritance: Why Your Content Contract Is Not a Base Class

Inside the structural conformance pattern in SaaS CMS — from server-side inheritance to pipeline governance. A contract in Optimizely SaaS CMS is...

Vipin Banka | Sep 19, 2026

Optimizely Opti ID Integration: Why the API Key Was Missing from the DXP Management Portal

While working on an Optimizely CMS 12 Opti ID integration recently, we ran into an issue that initially appeared to be related to SSO authenticatio...

Madhu | Sep 18, 2026 |

Extending a Contract: What You Can Override

Contracts share fields across content types — but not every field setting can be overridden. Push the same contract onto several components, and CM...

Chirag Khanna | Sep 18, 2026 |

Building a Blazor Server UI Inside the Optimizely CMS 13 Admin Shell

What I learned shipping a Blazor Server UI inside Optimizely CMS 13 — Razor components in a NuGet package, the Blazor hub next to MapContent(),...

Stanisław Szołkowski | Sep 17, 2026 |