The Microsoft Enabling Platform Experience group manages the Microsoft Developer Network (MSDN) and TechNet websites. To reduce costs and improve resource utilization, the group moved some of its sites to the Windows Azure cloud environment and
optimized them by using the Microsoft Autoscaling Application Block. Average CPU utilization of the moved sites is now three times higher, capital and operational costs are down, and the sites are more responsive to changes in traffic.
The Microsoft Enabling Platform Experience (EPX) group is part of the company’s Developer Division. EPX runs the popular Microsoft Developer Network (MSDN) and TechNet websites. These sites have consistently high rates of traffic, and they see significant
usage spikes during product launches, trainings, and conferences.
Both sites were originally built to run on on-premises hardware, which required a significant investment in additional servers to accommodate those traffic spikes. These extra servers were underutilized during periods of normal traffic, which wasted power
because underutilized servers still consume up to 60 percent as much power as those in use. Maintaining high utilization levels in an on-premises environment to save energy would require turning servers off and on in response to demand, which incurs risk and
is not a good use of capital assets.
||With Windows Azure and the Autoscaling Application Block, we have shown we are able to triple our average CPU utilization without modifying application code or sacrificing performance.
| Jay Jensen
Senior Systems Engineer, Microsoft Enabling Platform Experience group
To address these challenges, EPX chose to move some of the front ends of the MSDN and TechNet sites to Windows Azure, the Microsoft cloud services development, hosting, and management environment. “Cloud-based applications can dynamically grow or shrink in
response to demand,” explains Mark Aggar, Senior Director of Environmental Sustainability at Microsoft. “This means they use IT resources significantly more efficiently, making them less expensive to operate.”
The EPX group's goals for the migration and optimization project included: increasing average server utilization levels from 20 percent up to 67 percent with no code or architecture changes; producing equivalent or better performance and lowering energy
usage versus the original environment; and reducing infrastructure costs.
After migrating the MSDN and TechNet website front ends to Windows Azure, the EPX group now has a hybrid cloud solution: website data remains on-premises in multiterabyte Microsoft SQL Server databases, while the website front ends are hosted in worker
role instances in Windows Azure. This eliminated the need for front-end hardware infrastructure, in line with the group’s cost-reduction goals. Next, the group needed to customize the solution to optimize utilization rates.
Because it is a cloud solution, Windows Azure enables resource elasticity by facilitating the creation and disposal of virtual server instances on the fly. To optimize utilization without changing application code or architecture or manually managing role
instances, the EPX group chose to use the Microsoft Enterprise Library Autoscaling Application Block for a proof-of-concept project. This tool enables automatic scaling behavior in Windows Azure applications to take best advantage of Windows Azure resources—in
this case, worker role instances hosting the MSDN and TechNet sites.
EPX analyzed historical website traffic data and used this data to design Autoscaling Application Block constraint rules to set the maximum and minimum number of role instances in the application, and reactive rules that dynamically add or remove role instances
based on application metrics. The Autoscaling Application Block generates comprehensive diagnostic information and allows rule changes while running, so the team can fine-tune the autoscaling behavior to optimize the number of active role instances for maximum
CPU utilization. Implementing the Autoscaling Application Block required no code or architecture changes, and it took the team only a few hours.
EPX has performed detailed testing on its Windows Azure implementation to verify that the migration and optimization project achieved its goals. An eight-day sampling in June 2012 showed that the average role instance count with the Autoscaling Application
Block is 23 percent less than without it. With fewer instances working more efficiently, average CPU utilization across all running role instances now stays between 60 and 67 percent.
By moving some on-premises website front ends to Windows Azure and optimizing them with the Autoscaling Application Block, the EPX group has shown that it can increase both minimum and average CPU utilization without changing application code, and it
reduced infrastructure costs and energy usage while ensuring high performance.
Improved CPU Utilization
The EPX group increased its average CPU utilization from 20 percent to a minimum of 60 percent by building and fine-tuning appropriate autoscaling rules to manage its cloud-based web applications. “With Windows Azure and the Autoscaling Application Block,
we have shown we are able to triple our average CPU utilization without modifying application code or sacrificing performance,” says Jay Jensen, Senior Systems Engineer in the EPX group. “As we learn more about the system over time and further adjust the autoscaling
rules, we expect utilization and performance to get even better.”
Reduced Costs and Power Consumption
Now that the front ends of its websites are hosted in the cloud, EPX saves money in a number of ways. “Previously, we needed to have enough on-premises servers to meet our highest traffic peaks,” explains Jensen. “Now we can add virtual servers as needed
in the cloud without buying, maintaining, and administering our own hardware infrastructure, which reduces both capital costs and day-to-day operating costs. We also don’t have underutilized servers sitting around consuming energy, which reduces our carbon
Improved Elasticity and Performance
The ability to dynamically add and remove resources and autoscale the number of active worker roles has added resilience to the MSDN and TechNet website systems. “The sites now accommodate spikes in demand by automatically adjusting resources as necessary,”
says Grigori Melnik, Principal Program Manager in the Microsoft Patterns and Practices Group. “This helps us meet service level agreements and also reduce the number of manual tasks while staying on budget.”
For more information about the MSDN and TechNet autoscaling project, see:
For more information about other Microsoft customer successes, please visit: