Scaling Big
via Phil Windley, Inside MySpace.com, an absolute must-read for anyone doing large scale web applications on .NET. Actually, there's a bunch of nuggets in general about website design and architecture, particularly with user-generated content. The decisions on optimization are particularly tough because in a normal application, you can simply profile the app and use that data to figure out where the bottlenecks are. In the case of a web app, caching becomes a huge priority, but it's not always clear what data should be cached until you understand access patterns. In any case, you shouldn't expect a site to operate for very long without some sort of caching happening. The discussion of partitioning data was very interesting, as well - their data partitioning scheme failed because groups of users with related interests (the band in Florida) signed up en masse, which effectively negated the block partition scheme.