The Autoscaling Application Block provides a mechanism for adding autoscaling behaviors to Windows Azure applications based on predictive usage patterns or reactive rules. It monitors applications and automatically scales resources up or down based on defined rules. Rules can constrain scaling within certain bounds or react to workload changes by scaling instances. The block hosts in its own role or on-premises to monitor the application and perform scaling.