As web applications grow larger and larger, there's an ever-growing chance that it will be plagued with performance issues. If you're experiencing some of these growing pains (or want to prepare yourself for when you might be), you should take a look at some of these suggestions from a new article on Developer.com.
We've not covered in detail [in this series] what to do once you've assessed performance or how to leverage what you've learned about session state and caching to solve real world problems. In this article we'll be focused on isolating problems into solvable units and what to do when you believe that things just can't fixed.
They suggest a few methods for tracking down the real problem ("break it down", "changing the scenery") and some specific places where it's common for applications to struggle (loops, common bottlenecks). Their recommendations to help alleviate some of these issues include splitting workloads out to multiple processes, using more than one frontend web server and clustering databases instead of forcing them down to a single point.