Showing posts from November, 2011

RIF Notes #11

“Self-defense is not about winning fights with aggressive men who probably have less to lose than you do” – Sam Harris Four Destructive Myths Most Companies Still Live By – Some good points by the harvard business review. You only control 1/3 of your Page Load Performance! – dynatrace shows that third party content, even big players like facebook and google can be costing you on page load times. Clean up after Visual Studio - Just in case this is useful Silverlight 6 doesn't matter – Rocky provides some clarity around the fate of silverlight in regard to WinRT. Sharding vs. Having multiple databases - Ayende makes  a nice distinction regarding what sharding is and isn’t. 15 Pragmatic JavaScript Tips for ASP.NET Developers Scalable JavaScript Application Architecture Implementing 5 important principles of REST using WCF Services – Nice introduction to REST for WCF. Make a distinction: Errors vs. Alerts – This one hits close to home.  We have a lot of logging, excep

What went wrong with the distributed cache?

The basic purpose of the distribute cache was to address the following conditions: We moved from one webserver, to two webservers, with the intention of having the flexibility to move to N webservers.  The one webserver is utilizing the ASP.NET Cache (in-memory) for heavily utilized read-only objects (Category, ProductClass, Product).  Moving to two webservers meant a doubling of database queries for cached objects.  Each webserver having its own copy of the ASP.NET cache that it needs to load. The ASP.NET cache competes for memory with the application itself, as well as the outputcache.  An increase in memory pressure caused by any one of them causes cache trimming (items to be evicted from the cache).  This results in more database traffic to re-load the evicted items. Application restarts (application pool recycles, etc.) cause the cache to be flushed and reloaded. The database is the mostly likely bottleneck and is the most difficult to scale.  We can add more webservers, but