Roles are an important concept in Windows Azure and learning them is the base for further programming. There are mainly 3 roles in Windows Azure.
- Web Role
- Worker Role
- VM Role
It provides a web front end solution. This is similar to an ASP.NET application. While under hosting the Azure provides IIS and required services.
It provides a background service solution. This can be thought as a windows service application. We can use this role to run background operations like database management tasks, report generation etc. It can run lengthy operations.
According to msdn, the Web Role can be considered as a Worker role loaded with IIS. Similarly the worker role can be used to host other application platforms.
VM Role (Virtual Machine Role)
The Web Role and Worker Role are executed on virtual machines. The Virtual Machine Roles provides the user to customize the virtual machine on which the web and worker roles are running. The VM role runs a virtual hard disk (VHD) image which can be created and uploaded by the user. Through the VM role the customers can run scheduled tasks and other windows services.
From the above we can summarize that a Windows Azure application will be containing web roles, worker roles and vm roles.
The case of application is similar to our ordinary solutions where a project include
- Web Application in ASP.NET
- Background Services in Windows Services