The power, popularity and cost effectiveness of cloud-based computing continues to grow. That is why you should consider running your internet based or on-premises applications on Microsoft’s Windows Azure technology platform. In a previous post we introduced the Windows Azure cloud services platform. Now, in this series of posts we want explore in-depth the features and advantages of Windows Azure.

What is the Windows Azure platform you ask? It is an on-demand, cloud-based computing service. The cloud is made up of interconnected computer resources distributed among several data centers. Through the cloud developers can create and run applications and maintain their application’s data and not just for internet based applications, but also on-premises applications can use cloud-based resources.

But how does it work? The Windows Azure platform abstracts hardware resources through a process known as virtualization. Under Windows Azure each applications runs in one or more Virtual Machines (VMs) making them appear as if they were running on a dedicated computer, while they actually may be sharing physical resources with other applications. Virtualizing cloud services allows multiple physical hosts to use the same data center thus lowering costs for subscribers.

Yet this is not the only advantage of virtualization. It also allows you to scale your applications both vertically and horizontally. With vertical scalability you are able to increase the amount of resources used as the demands of your customers grow. And with horizontal scalability you can add more virtual machine instances to your existing services. Load balancing of these instances is automatically handled at the network level to ensure that there are evenly distributed.

Within Windows Azure platform there are three main components:

  • Windows Azure – a Microsoft Windows Server based environment for running applications. It provides data storage, both structured and unstructured along with asynchronous messaging.
  • Windows Azure platform AppFabric – which is made up of the Service Bus for connecting applications (either on-premises or public cloud applications) and the Access Control Service which handles authorization and authentication for Representational State Transfer (REST) based Web services with security tokens.
  • SQL Azure – basically Microsoft SQL Server provided as a cloud service.

In addition to these, the Windows Azure platform includes several management services for controlling and managing cloud resources via a web-based user interface or through REST-based API which can be used programmatically to specify how your services function.

In our post next week, we will take a more detailed look at the components of the Windows Azure platform.