ServiceThrottlingBehavior defaults for .NET 4
This is one of the new updates that you will find with the .NET 4 installation. This was a decision we reached after understanding the fact that almost all customers had to bump this number up to a sweet spot of around 100 sessions. However the initial decision of keeping a very low number was a conscious one. We wanted to make sure this throttle would be hit really early on the development cycle and would cause a forced learning of service throttling behavior and how you need to think about performance of your service.
3.0 to .NET 3.5 Sp1 | .NET 4 | |
MaxConcurrentCalls | 16 | 16* Processor Count |
MaxConcurrentSessions | 10 | 100* Processor Count |
MaxConcurrentInstances | Sum (26) | Sum (116*Processor Count) |
There are few more goodies like more indicative performance counters to show you if your close to hitting this throttle value and if you need to bump this value up any more. For example if your 80% usage then you know that you have about 20% more throughput. But if your CPU is already fully loaded then probably you need to lower the values since you might actually have maxed out a much lower throughput value and it might be more optimal to process lesser calls.
Note: Cross posted from Sajay.
Comments
- Anonymous
March 29, 2012
The MSDN doc for .NET 4 shows different default values. But the 4.5 Version shows your default values. Where is the problem ? msdn.microsoft.com/.../system.servicemodel.description.servicethrottlingbehavior.maxconcurrentsessions(v=vs.100).aspx