Microsoft Azure uses the 'Platform as s Service' (PAAS) model. This means it controls the Operating System and our software must run within that defined environment.
From a developers perspective this is perfect, it feels the same as developing a normal ASP.NET application and we have delegated the responsibility of maintaining the OS,
it’s security patches, virus protection, disaster recovery, etc to Microsoft.
In fact, every large organisation already does exactly this internally when deploying systems into their organisation. With the additional cost of purchasing the hardware.
Azure Roles
Azure roles are simply machines doing different jobs. The Web Role is really a machine (or multiple machines) running the classic ASP.NET website or a WCF (SOAP) website.
The Worker Role can be considered to be a service which does the background processing jobs.
Azure Storage
There are two types of permanent storage available to us with Azure. The ‘No SQL’ storage, which is extremely cheap and can store massive amounts of data including blobs and
unstructured data. And the Azure SQL database, which is SQL Server 2008 in the cloud with only a few missing features.
All data is continuously backed up using some sophisticated techniques, without having to worry about providing additional storage and because Azure Data Centres are built in pairs,
we automtically have Disaster Recovery as standard.
Much More
We have just scratched the surface of the capabilities in Azure. It also offers sophisticated integration features via Azure Queues and the Service Bus and
it directly supports Claims Based Authentication, so extending your domain into the cloud is truly possible .