web-dev-qa-db-fra.com

Comment augmenter les threads de pool de threads sur IIS 7.0

Environment: Windows Server 2008 Enterprise, IIS 7.0, ASP.NET 2.0 (CLR), .NET 4.0

J'ai un ASP.NET application sans page et sans session (HttpHandler). C'est un serveur de streaming. J'utilise deux threads pour traiter chaque demande, donc s'il y a 100 clients connectés, alors 200 threads sont utilisés. Il s'agit d'un serveur dédié et il n'y a plus d'application sur le serveur.

Le problème est après que 200 clients sont connectés (sous test de résistance), l'application refuse les nouveaux clients, mais si j'augmente les threads de travail de application pool (créer un jardin Web) alors je peux avoir 200 nouveaux clients satisfaits par w3wp processus.

Je pense que la limite du pool de threads .NET atteint à ce stade et que je dois l'augmenter.

Merci

23
Xaqron

Regardez l'élément applicationPool de votre aspnet.config:

<configuration>
  <system.web>
    <applicationPool 
        maxConcurrentRequestsPerCPU="5000"
        maxConcurrentThreadsPerCPU="0" 
        requestQueueLimit="5000" />
  </system.web>
</configuration>

Un exemple d'emplacement est:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config

Vous pouvez également regarder processModel (dans votre machine.config).

25
Oded