Important to know when building scalable .NET applications
All, Just to let you know below some more information on building scalable .NET applications
a performance killer is the CLR build mode being used.. almost every .net app runs in the "workstation build" mode instead of server build. (even microsoft apps like reporting server)
The difference is that besides the Garbage Collection impact, the workstation mode dll will only use 1.5 - 2 cpu's versus all available 8,16 or 32 cpu's
basically blocking serious throughput. (we have seen apps that after we forced it to run in server mode, the throughput went up by a factor 3x..)
Easy check to see in what mode it runs, is to check which dll the app is using :
when it runs in the workstation CLR mode , it is recognisable by the usage of MSCORWKS.DLL , the server clr uses MSCORSVR.DLL.
( A utility like
www.Sysinternals.com - Process Explorer will show it quickly and also which threads a truly doing some work within the app)
click here to see how to enable Server Build mode
Click here to see how this setting affects the number of processors