The simplest path to scaling an application to handle a greater load is improving the hardware. Nowhere is this more apparent than in building a bigger server. Bigger in this sense refers to a server with high-speed processors, usually several of them, and a fully populated bank of memory. These are the big iron of the client server world and are designed to be not only fast but also stable and easily managed. Beefy Single BoxesThe most common way to scale a server to handle more users or a greater load is to simply upgrade to a bigger box. Upgrading to a higher clock speed processor or a new generation of processor can add significant performance to a server. Adding memory or a faster disk subsystem can also help out performance. Always analyze a system that is going to be upgraded to determine where the bottleneck is on the server. Focus on upgrading that subsystem for the largest performance gains. By increasing the performance of the system it will be able to scale further and support more users. Windows 2003 and Multiple Processors Windows 2003 is much better about dealing with multiple processors than previous versions of Windows. Windows 2003 can support up to 64 processors right out of the box. Multinode ClustersSometimes building a bigger server isn't an option. A server might be as big as it can be. If you can't add more processors or faster processors or more memory it might be time to look at getting the server some help. Creating multinode clusters enables you to scale a system beyond what a single server could do. Active/Active clusters can literally double the capacity of a system. The area where this concept adds the most performance is in places where it is not feasible to split users off to another system. This is most commonly seen with databases. Sites that have multiterabyte databases often can't realistically split the data across multiple databases. In these situations the key to scaling out the database is via clustering. Windows 2003 Enterprise offers support for clusters of up to eight nodes. This represents a paradigm shift in how Windows can scale to support high-demand applications. Many Microsoft applications like SQL 2000 and Exchange 2000 were built with clustering in mind. Requires Technologies Like SAN or NAS Creating clusters of more than two nodes requires technologies like SAN or NAS to provide the shared storage. A shared SCSI enclosure only works for two node clusters. Always work with the hardware vendor to ensure that servers are certified to work with Windows 2003 clustering. |