Most distributed applications rely on a data tier: a single layer where all information resides. The data tier is one of the most critical areas of a distributed application because a disproportionate amount of the weight tends to fall on it. All too often, the data tier becomes the first bottleneck of a growing system as demand outstrips the system's ability to create connections or retrieve data. Fortunately, a wealth of tools are available for optimizing the data tier. We'll explore the options in Microsoft .NET, first by developing a connection pooling test and considering the best data-transfer plans, and then by adding dynamic data caching. Finally, this chapter will discuss some of the features available in the data source itself and explain how you can optimize a database, looking specifically at Microsoft SQL Server. |