Environment: Windows Server 2008 Enterprise, IIS 7.0, ASP.NET 2.0 (CLR), .NET 4.0
I have an ASP.NET
application with no page and no session(HttpHandler
). It a streaming server. I use two threads for processing each request so if there are 100 connected clients, then 200 threads are used. This is a dedicated server and there's no more application on the server.
The problem is after 200 clients are connected (under stress testing) application refuses new clients, but if I increase the worker threads of application pool
(create a web garden) then I can have 200 new happy clients per w3wp
process.
I feel .NET thread pool limit reaches at that point and need to increase it.
Thanks
Look at the applicationPool
element of your aspnet.config:
<configuration>
<system.web>
<applicationPool
maxConcurrentRequestsPerCPU="5000"
maxConcurrentThreadsPerCPU="0"
requestQueueLimit="5000" />
</system.web>
</configuration>
An example location is:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config
You may also want to look at processModel
(in your machine.config).