I was reading about the a new feature in Windows Communication Foundation (WCF) 4.0 on the following blog. The feature in question is a change to the default throttling settings, where the original WCF settings where set statically, and extremely conservative.
For example, here are the default settings in 3.0:
- MaxConcurrentSessions (default: 10)
- MaxConcurrentCalls (default: 16)
- MaxConcurrentInstances (default: 26)
In my infrastructure role, when I hear about performance issues, it an application owner blaming the hardware. I often hear comments like “We need more CPUs”. “We need more memory”. “We need more servers”. “Virtual Servers are SH#T, I want a physical”.
Only problem (in WCF 3), without changing the above settings, throwing more hardware at the problem won’t improve anything. WCF 4 fixes this issue by making the settings a multipliers of the CPU count (and less conservative).
I’m wondering…
- How many other infrastructure components (WCF, TomCat, PHP, IIS, Apache) are built with default conservative settings that don't scale or are conservative?
- How well these settings are documented?
- How are recommended settings communicated from app developer, implementer and business app owner during life cycle of dependant applications?
0 comments:
Post a Comment