Cloud computing is a platform concept that promises to increase the speed of application deployment, increase innovation, and lower costs, and increase business agility. In this article, I'll discuss some essential points about cloud computing and the features and benefits of the Windows Azure cloud computing platform.
Cloud Computing Essentials
The cloud computing paradigm promises to transform the way we design, build, and deliver applications. In essence, the cloud is an environment comprising a number of connected servers on which you can install and run services and applications. Microsoft's Windows Azure platform includes the Windows Azure cloud operating system, the Microsoft SQL Azure relational cloud database, and Windows Azure platform AppFabric for connecting cloud services and on-premise applications. Other well-known cloud computing providers include Amazon Web Services, Microsoft Live Mesh, Google Apps, GoGrid, and AppNexus.
A cloud OS provides an abstract execution environment for applications that can reside in the cloud. It provides support for a shared file system and a platform that can be used to allocate resources and program and manage applications in the cloud.
The deployment models in cloud computing include
- private clouds
- public clouds
- community clouds
- hybrid clouds
These are the supported delivery models:
- cloud software as a service (SaaS)
- cloud platform as a service (PaaS)
- cloud Infrastructure as a service (IaaS)
What Is Windows Azure?
Microsoft defines Windows Azure as "… a cloud services operating system that serves as the development, service hosting and service management environment for the Windows Azure platform. Windows Azure provides developers with on-demand compute and storage to host, scale and manage web applications on the internet through Microsoft datacenters" (see http://www.microsoft.com/windowsazure/windowsazure).
Any application running in Windows Azure can have either of these roles: Web role or Worker role. The former is typically implemented using ASP.NET running in the context of IIS; the latter is a batch job that receives input through Windows Azure storage. Note that each of these roles executes in its own Windows virtual machine.
The goal of Windows Azure platform is to provide a foundation for running Windows applications in the cloud. Windows Azure runs on systems in Microsoft data centers. In essence, Windows Azure is a service that you can use to run applications and store data on Internet-accessible systems. Windows Azure platform supports languages that are targeted at the .NET CLR—for example, C# and VB.NET—as well as Java, Ruby, PHP, and Python.
Azure Platform Components
Windows Azure comprises the following three components:
- a compute service, which provides support for applications that can have multiple instances
- a storage service, which uses BLOBs, tables, and queues to store and manage data
- an application fabric, which includes a group of systems, all of which are managed by a fabric controller
Find Out More
You can find more information about Windows Azure platform pricing and other offers here. To try out the Windows Azure Platform free, check out the Windows Azure Platform Introductory Special offer.
Here are some more helpful links to Windows Azure resources:
Developing and Deploying Windows Azure Apps in Visual Studio 2010
Microsoft Windows Azure Platform page
- Manuvir Das: Introducing Windows Azure
- Windows Azure Platform Training Course
Joydip Kanjilal ([email protected]) is a Microsoft MVP in ASP.NET, author, and speaker. He has more than 12 years of industry experience in IT with more than six years in Microsoft .NET and its related technologies. Joydip blogs at http://aspadvice.com/blogs/joydip.