What is Windows Azure?
The Windows Azure Platform is a flexible, cloud computing platform that lets you focus on solving business problems and addressing customer needs. It is a group of cloud technologies, each providing a specific set of services to application developers. The main components of the Windows Azure platform are the following:
- Windows Azure provides a scalable environment with computing (web and worker roles), storage (blob storage, table storage), hosting (queue service), and management capabilities. It links to on-premises applications with secure connectivity, messaging, and identity management.
- SQL Azure is a cloud-hosted relational database that is very similar to SQL Server.
- Windows Azure AppFabric is an SDK that makes it simpler to connect on-premises applications with the Cloud.
What is the Windows Azure Platform?
The Windows Azure platform components are not tied together: you may select the components that are useful for your specific application and situation, both for applications hosted on premise and on Windows Azure. For example, blob storage - the storage service providing massive scale-out storage on Windows Azure - can be used from an application you host on Windows Azure as well as from an application hosted on your current web server.
Why use Windows Azure?
Focus on building your application and on delivering services and value to your customers, not on managing technology infrastructure and operational hurdles. Windows Azure runs on servers owned and operated by Microsoft and is backed by a reliable service level agreements. (http://www.microsoft.com/windowsazure/sla)
Let the Cloud handle your growth: whether you need on & off workloads, are growing fast, or are having sudden spikes to absorb, Windows Azure will let you transition smoothly between different stages.
Finally, with Windows Azure you don't have to relearn everything. You can utilize your existing skills in familiar languages such as .NET, Java and PHP to create and manage web applications and services.
These different stages will apply to many scenarios developers will have to address, for example when they need to:
- Create an SaaS application targeted towards business users or consumers.
- Perform large-volume storage with optimized content delivery around the world.
- Run batch processing, intense or large-volume computations.
Windows Azure Platform and Interoperability
As part of Microsoft's continued commitment to interoperability, the Windows Azure platform has been built from the ground up with interoperability in mind. As an open platform, Windows Azure offers choices to developers. It allows them to use multiples languages (.NET, PHP, Ruby, Python or Java) and development tools (Visual Studio or Eclipse) to build applications which run on Windows Azure and/or consume any of the Windows Azure platform offerings from any other cloud or on-premise platform. With its standards-based and interoperable approach, the Windows Azure platform supports multiple Internet protocols including HTTP, XML, SOAP and REST -key pillars of data portability.
From the developer's standpoint, interoperability creates opportunities to combine new Azure cloud-based applications with other platforms. Developers can easily combine applications living on other clouds, or on-premise using services offered by the Windows Azure platform. They can also build and enhance applications using their existing skills with the Microsoft Visual Studio development environment and the .NET Framework, or with other development environments, like Eclipse. Developers have the choice of several languages for building their applications, including:
- .NET (C# and Visual Basic), C++
- PHP, Ruby, Python
In addition, interoperability with other platforms is made easier through community-based libraries:
- Plug-ins for Eclipse
- SDKs for Java, PHP, and Ruby