In Microsoft Cluster Server (MSCS) or Windows Clustering, any client application that can run on a node of a cluster and can be managed as a cluster resource. Cluster-aware applications can be written to access the services of MSCS by using its cluster application programming interface (API). Cluster-aware applications also implement the extension dynamic-link libraries (DLLs) of Cluster Administrator, which allow them to be managed using Cluster Administrator.
These features allow developers to write high-scalability applications that can perform dynamic load balancing across the different nodes in a cluster.
A cluster-aware application is one that is aware of the fact that it is running on a cluster and can make use of the scalability, load balancing, and failover aspects of clustering to provide high availability for mission-critical business environments. Cluster-aware applications include database applications such as Microsoft SQL Server, messaging applications such as Microsoft Exchange Server, and Web applications for running on Web servers such as Internet Information Services (IIS).