Quali limiti WCF ServiceModelService.Instances?
-
22-08-2019 - |
Domanda
Sto tentando di caricare testare un servizio WCF con (IIS6 / Server2003 / BasicHttpBinding). Il servizio viene strozzato nel seguente modo:
<serviceThrottling maxConcurrentCalls="100" maxConcurrentSessions="100" maxConcurrentInstances="100"/>
Per valutare il numero di chiamate sul server sto usando i contatori delle prestazioni ServiceModelService 3.0.0.0. Se io Throttle le maxConcurrentCalls fino a 20, 15, 10 o qualcosa di inferiore il contatore spettacolo istanze delle prestazioni che WCF rispetta la limitazione. Tuttavia, se cambio maxConcurrentCalls a 30 non sono mai in grado di ottenere istanze di andare sopra 24. Inoltre, le chiamate eccezionale non va mai al di sopra 24. Che altro potrebbe essere limitante WCF?
Soluzione
Vedere Perché solo due richieste simultanee per WCF Load Testing?
Quando ho guardato a questa domanda, il mio prima risposta è che: il cliente ha fatto Non inviare in realtà abbastanza richieste al server. Perché? Ecco qui le motivi:
1) Se si utilizza il WCF sincrono HttpModule / HttpHandler (installato da di default), si otterrebbe il massimo numero di richieste simultanee (titolare tale numero di ASP.NET thread di lavoro) come 12 * [Numero di CPU per il Server].
2) WCF limitazione è sopra specificato.