On the first day of the PDC 2008, Microsoft announced Windows Azure, the new operating system for the cloud. Still unclear what this is all about? No worries, in this post, I'll try to explain everything you need to know. After reading, you'll be able to take part in any conversation on Windows Azure!
So what is Windows Azure actually? Is it the new version of Windows that you'll be installing on your PC in some time? Is it a codename? Well, in fact, it's none of the above!
The Azure Services Platform is an internet-scale cloud services platform hosted in Microsoft data centers, which provides an operating system and a set of developer services that can be used individually or together.
Azure’s flexible and interoperable platform can be used to build new applications to run from the cloud or enhance existing applications with cloud-based capabilities. Its open architecture gives developers the choice to build web applications, applications running on connected devices, PCs, servers, or hybrid solutions offering the best of online and on-premises.
So, in short, it's a platform to host (part of) your applications on, giving you unparalleled options when it comes to scalability, reliability and performance.
Azure Services Platform is built on the Windows Azure foundational layer and consists out of some components, including:
- SQL Services for relational data storage and querying
- .NET Services for service-connectivity, workflow, and messaging
- Live Services for application extension of the Windows Live platform
- SharePoint Services which provide extensibility for SharePoint Server
- Dynamics CRM Services which provide extensibility for Dynamics CRM
Is Azure something for me?
You might be wondering, what's in it for me? Am I going to be able to benefit from this move? There's something in Azure for most of us. If you are developing applications for large enterprises, you'll want to take advantage of the options to move part of your applications off-premise, while keeping parts on-premise. All while taking advantage of the high availability and versatility.
If you are a smaller organization or ISV or even a startup, and you are unsure about the needed infrastructure for your project, you can use Azure services as well.
Even students and hobbyists will be able to take advantage of the platform. I know I will be moving some of my blogs to Azure when it's ready!
And... When can I start using Azure?
Well, it depends. If you attended PDC, you'll get an account really quickly. It is however only a CTP (Community Technology Preview) so it only contains some of the functions the final platform will contain. If you didn't attend PDC, you'll be able to get an account in the following weeks.
No word on final release date, Microsoft reckons it will be based on the feedback they are getting from testers. Also, no word yet on final pricing.
OK, we got Silverlight already... What's in the name Azure?
Well for starters, the sky is azure colored. The sky is open and limitless. Windows Azure supports the concept of vast capacity and flexibility. Azure is a vibrant and dynamic color. It’s uplifting. Azure is also linked to the image of the blue sky and, by extension, ‘the cloud.’
Developers, developers... We know the story. How will they be developing for Azure?
Well, to start with, I did some hands-on labs with the new tools installed in Visual Studio 2008. I must say that working and developing for Azure is really transparent from a developer's perspective.
In addition, The Azure Service Platform is designed to work with both Microsoft and non-Microsoft technologies. The Azure Services Platform supports the REST, SOAP and XML protocols. In addition to that, Azure will also in the future work with PHP and other tools like Eclipse.
Just released are the Windows Azure Tools, a toolset for Visual Studio 2008 currently in CTP and available for anyone from this link. These tool enable developers to build ASP.NET Web applications and services that are hosted in the Windows Azure™ cloud services operating system.
You don't have to learn anything new: just use your existing skills, and easily develop, debug, test, and deploy Web applications for Windows Azure from within Visual Studio. Developers can build ASP.NET applications using the same tools and techniques they use today. Included in the Windows Azure Tools for Microsoft Visual Studio is the Windows Azure SDK environment, which includes a simulated cloud environment that runs on the developer’s machine, so developers can test and debug their applications locally, called the Development Fabric.
.NET Services
One of the most important parts in my opinion, being a .NET developer, are the .NET services of course.
These .NET Services are a set of Microsoft-hosted, highly scalable, developer-oriented services that provide key building blocks required by many cloud-based and cloud-aware applications. Much like the .NET Framework provides higher-level class libraries that make developers more productive, .NET Services can help developers focus on their application logic rather than building and deploying their own cloud-based infrastructure services.
The .NET Service Bus makes it easy to connect applications together over the Internet. Services that register on the Bus can easily be discovered and accessed, across any network topology. The Service Bus provides the familiar Enterprise Service Bus application pattern, while helping to solve some of the hard issues that arise when implementing this pattern across network, security, and organizational boundaries, at Internet-scale.
The Microsoft .NET Access Control Service provides an easy way to control web applications and services while integrating with standards-based identity providers, including enterprise directories and web identity systems such as Windows Live ID. Authorization decisions can be pulled out of the application and into a set of declarative rules that can transform incoming security claims into claims that applications understand.
The Microsoft .NET Workflow Service is a high-scale host for running workflows in the cloud. It provides a set of activities optimized for sending, receiving, and manipulating HTTP and Service Bus messages; a set of hosted tools to deploy, manage and track the execution of workflow instances; and a set of management API’s. Workflows can be constructed using the familiar Visual Studio 2008 Workflow Designer.
You can read more on the blog of .NET Services here.
I hope this info will get you up to speed with Windows Azure!