Windows Azure中的计算模块,可支持运行许多不同类型的应用程序。但是,无论应用程序执行何种操作,它都必须帮助实现一个或多个角色。Windows Azure使用内置的负载平衡对每个角色的多个实例进行实现。

包含Web角色实例、工作者角色实例和虚拟机角色实例的Windows Azure
目前,Windows Azure只支持开发人员创建和使用Web角色、工作者角色和虚拟机角色。Web角色主要用来简化基于Web应用程序的创建,每个Web角色实例内预先配置好了IIS服务,这对于熟悉ASP.NET、Windows Communication Foundation和其他Web技术的人员来说,可以实现快速上手。
相比之下,工作者角色没有IIS服务,在运行基于Windows的代码的时候不会有IIS托管。不过,它也和Web角色一样,也支持非微软技术软件来创建应用程序。而对于运行Windows Server 2008 R2映像的虚拟机角色来说,它可以提供将Windows Server应用程序迁移至Windows Azure。
用户通过HPPT、HTTPS和TCP等协议发出计算请求,能够在各角色的所有实例上实现负载平衡。开发人员可使用Web角色实例、工作者角色实例和VM角色实例的任何组合来创建Windows Azure应用程序。如果应用程序的负载增加,可以通过Windows Azure门户在应用程序中请求任何角色的更多实例。如果负载降低,可以相应减少运行的实例数量。
存储
Windows Azure也提供了多种存储选择,包括blob、表和队列。blob包含二进制数据,是Windows Azure存储数据最简单的方式 ,它的层次结构较为简单,每个容器可以包含多个blob,而且每个blob还可以包含相关联的元数据(诸如照片的拍摄时间地点、机型等信息)。

Windows Azure存储提供blob、表和队列三种方式
Windows Azure还通过表实现更精细的数据处理方式,有助于实现比标准关系数据库更为有效的存储扩展。blob和表都主要用于存储和访问数据。相比之下,Windows Azure提供的队列选项则拥有不同的功能。
队列主要应用在Web角色实例与工作者角色实例的通信与协同,它用来帮助提交所有完成的工作请求,等待队列的工作者角色在读取消息并执行指定的任务后,可通过另外一个队列将处理结果进行返回。