Design
Let's assume for this chapter that you have so many concurrent users on your site that you are starting to notice that the site and your servers are no longer able to keep up. What can we do? There are many approaches to this problem. You can simply leave the code unchanged and put the same code on many servers. You can address some performance in your code and stay on one server. You can even address some optimizations at the database level. Eventually though you will have to do all these to withstand the large loads of a successful community.
Database optimization
Up to this point we have not spent too much time discussing much at the database level. I will try to maintain that theme here as well, this book being more about ASP.NET and C# than it is about SQL! That being said, there are some things that we can do at the database level that we just can't do elsewhere.
Flagged for delete
Flagging content to be deleted rather than actually deleting it is not only going to be faster from...