技术开发 频道

【第7篇】别把Windows Azure当虚拟主机使:理解Windows Azure服务架构

  【IT168 技术文档】

  最近有朋友问我:Windows Azure 是不是一个微软官方提供的 ASP.NET 应用程序虚拟主机?

  他的具体理解是这样的:Windows Azure 提供了对 ASP.NET 应用程序的托管,并且,“云计算”离我们那么近,只要把 ASP.NET 应用程序部署到 Window Azure 上,以前的 ASP.NET 应用程序就变成“云应用”了!

  第一篇:Azure Services基础:Azure Services平台
  第二篇:
Azure Services基础:SQL Data Services(SDS)概述 
  第三篇:
Azure Services基础:SQL Data Services 编程基础
  第四篇:
Azure Services基础:.NET Services概述
  第六篇:
Azure Services基础:Windows Azure Storage概览
  第七篇:
Azure Services基础:ASP.NET Provider概述

  怎么说好呢?这种理解完全是受当今社会混乱的 .NET 虚拟主机市场逼出来的。Windows Azure 作为 Azure Services Platform 的一号服务,如果你仅仅只用他来存放你已经过时的 ASP.NET 应用程序,那简直是杀鸡用牛刀、暴殄天物。

  那么,Windows Azure 应该怎么用?它到底比一般的虚拟主机牛在哪儿?那还的从 Windows Azure 的服务架构说起。

  Roles(角色):

  先说说角色问题吧,非常重要。不理解 Windows Azure 关于 Role 的概念,是没办法懂得微软煞费苦心的“云”的。

  部署到 Windows Azure 上的程序扮演着以下两种角色:Web Role 和 Worker Role。

  Web Role:顾名思义,就是提供 Web 服务的角色。简单地说,Web Role 就是 ASP.NET Applicantion,是你本地 ASP.NET Application 的云端版本!支持 HTTP/HTTPS 协议,还能提供 WCF 服务。

  Worker Role:在后台运行的应用程序。它可以在后台访问任何网络资源、数据源并进行操作。它从来不在大庭广众前露面(不开放外部访问接口),它接到命令后会毫无怨言地依次执行(Queue service里的消息队列能引导它的工作),它就像一个默默无闻的无私奉献者。可以拿 Windows 系统服务跟它类比,一旦启动,一直在后台运行。很爽吧? 这个功能值得重视,大伙们看清楚了,这可是一般的虚拟主机无法提供的哦~ 就连 Google 引以为豪的云平台 Google App Engine,至今已经更新了许多许多次,也从来没有考虑过让一段程序在后台长期运行!

  这个 Workder Role 颇具有“云”的概念:一直在云端悄悄运行,地面上的人看不到它,但却不能没有它。

  所以,“云计算”并不是说只要你把“计算”放在“云”上就可以,而且彻底地让“计算”在“云”上运行。它包括以下几层含义:在云上——不需要本地服务器;云很大——计算量可以很大;无论在哪里,一抬头就是云——云平台上的应用无论在哪里、使用何种设备都能使用;躲在云里——它的计算过程无论有多复杂,地面上的使用者不需要看到它。

  Role的附件

  Web Role 和 Worker Role 这两个小朋友也是带了家属一起加入到 Windows Azure 这个大家庭的,它们暂时包括:

  把Local Storage 作为缓存使用
  标准的 Event Streams 记录日志、发出警告
  健康报告

  呵呵,这些也是普通的虚拟主机无法有的吧?“云主机”的功能是非常强大的,配套是非常完善的!

  服务定义(Service Definition)

  程序生活在 Windows Azure 这个新环境里往往会感到纳闷,会怀疑人生:我到底是 Web Role 还是 Worker Role 呢?

  这就需要我们来帮助它们了。

  Windows Azure 使用了一类后缀 .csdef 的文件来定义服务。包括:这个服务到底似乎 Web Role 还是 Worker Role?使用 HTTP 还是 HTTPS ? 哪里去找 Local Storage 这个亲家来帮忙?诸如此类的信息。

 

  服务配置(Service Configuration)

  Web Role 和 Worder Role 这两个小朋友在得到关于职业规划的答复后,又产生了对职业生涯方面的疑问:具体应该怎么做呢?

  这就需要用到服务配置了。顾名思义,就是对具体服务的具体配置了。我们采用 .cscfg 为后缀的文件来保存它们。它担当着与 ASP.NET 中的 Web.Config 文件类似的任务,且任务更重。    

  好了,说了这么多,相信读者已经对 Window Azure 的服务架构有了一个清晰的了解了。千万不要再把 Windows Azure 当作一般的.NET虚拟主机来使了哦~微软知道后会很受伤的!

0
相关文章