Windows Azure的应用程序构建模式

J.D. Meier,是一个微软模式与实践团队的首席程序经理,他列出了一些在Windows Azure上进行ASP.NET应用程序开发的模式,展示了这些组件如何在云中进行运作的。他也给出了一个把标准Web应用程序映射到云中的例子。

这个权威的Windows Azure应用程序模式包含了从网络获取请求的Web Roles,以及伺服这些请求的Worker Roles。Web Roles和Worker Roles 是通过队列服务(Queue Services)来解耦,如下图所示:

alt

这个模式的一个简化版本即是应用Azure Tables(表服务)的ASP.NET窗体验证:

alt

Meier列出了超过10个的Windows Azure的应用程序构建模式,他们其中一些使用窗体授权,有些使用基于声明的授权,而剩下的使用WCF:

  • 模式 #1——应用Azure Tables进行ASP.NET窗体验证
  • 模式 #2——应用SQL Azure进行ASP.NET窗体验证
  • 模式 #3——基于声明应用活动目录
  • 模式 #4——基于联合声明应用活动目录
  • 模式 #5——在Azure中从ASP.NET应用访问WCF服务
  • 模式 #6——现场ASP.NET应用访问Azure中的WCF服务
  • 模式 #7——基于声明,现场ASP.NET应用访问Azure中的WCF服务
  • 模式 #8——使用AppFabric Access Control的REST服务
  • 模式 #9——在Azure Storage中存储数据的ASP.NET应用
  • 模式 #10——在SQL Azure中存储数据的ASP.NET应用
  • 模式 #11——现场ASP.NET应用通过WCF服务访问存储在SQL Azure中的数据

非云环境下的Web应用程序模式(见Microsoft Application Architecture Guide)描述了供浏览器访问的构建于3个基础层上的服务器应用程序——表现层、业务层和数据层:

Ee658104.83ae5a18-d230-4569-aac0-82ce5e30ea61(en-us,PandP.10).png

根据Meier所说,这个模式也可以应用到Azure中,只需要把上述提及的层构建为Web Role即可,并且可以使用Azure Storage来作为存储数据的选择,Azure Web Services作为服务接口的选择:

alt

CodePlex的模式与实践——Windows Azure指导项目包含很多在微软云计算平台中进行迁移、开发和集成应用程序的准则。

查看英文原文:Patterns for Building Applications for Windows Azure

你可能感兴趣的:(Windows Azure的应用程序构建模式)