《Windows Azure Platform 系列文章目录》

Windows Azure应用程序运行环境

Windows Azure云计算平台是提供PaaS(平台即服务)IaaS(基础架构及服务)的,在Windows Azure PaaS平台上提供两种不同的应用程序角色

1.Web Role

Web Role是已经安装好IIS 7.0运行环境的Windows Server 2008 x64操作系统,开发人员可以利用Web Role来部署HTTP的应用程序,包括ASP.NET,PHP(FastCGI),JSP或者是基于HTTP的WCF应用程序等的Web应用程序。新版本的Web Role中可支持Full IIS模式,即开发人员可通过服务组态档在同一个Web Role中设置多个网站或单一网站(Site)内多个虚拟目录(Virtual Directory),更扩大了Web Role的应用弹性。

2.Worker Role

Worker Role可以简单理解成Windows 上的Windows Service服务,它是一个无用户界面的应用程序角色,默默地在后台运行(我个人感觉更类似于Timr_Tick函数),开发人员可以利用Worker Role来处理不需要用户界面的大量计算。

Web Role可以通过Queue的方式向Woker Role发送一串消息,让Work Role执行用户自己需要的逻辑。

为什么微软要有Worker Role?它的好处在哪里?在这里我举个例子您就能明白,比如我们有一个信息管理系统,需要上传Excel文档来进行解析和处理,从软件设计的角度来说有2种方法来解决。

a)在ASP.NET应用程序里新建个upload control,在upload control里面写函数:一旦Excel文件上传完毕,则在.cs文件执行对于Excel的处理工作。但这样会有一个缺点,如果Excel文件里包含的内容非常大的话,需要时间来处理这些内容,所以前台的ASP.NET的页面会停滞或者无响应。虽然我们也可以通过增加progressbar或者loading图片来增强用户的体验,但是从软件设计上来说不是最好的。

b)前端还是用原来的处理方式,使用upload control。服务器端增加一个Windows Service,时序的查询某一个文件夹,一旦发现前端页面上传了一个Excel文件,则Windows Service执行处理Excel的工作。这样前端的页面会及时的响应并且得到更好的用户体验。但是这还是有一个缺陷,前端的页面和windows service是一对一的关系,如果附件上传的数量很大的话会出现Windows Service来不及处理的情况。

有了Worker Role,我们可以让一个ASP.NET页面后端有多个Worker Role来进行分散式的计算,是一对多的关系,能够有效的利用云上的计算资源,Worker Role可以处理高负载的数据访问。

3.Windows Azure Virtual Machine

Windows Azure Virtual Machine是IaaS的服务。

3.VM Role

VM Role微软为了解决IaaS层次(基础设施即服务)而新增的程序角色。Web Role和Worker Role是属于PaaS的范畴,预装了Windows Server 2008 R2的操作系统。而VM Role允许用户使用Hyper-V自己安装操作系统和应用程序再上传到Windows Azure云环境。这对企业在转移应用程序到云端提供了非常大的弹性的支持,用户可以使用Hyper-V在VHD安装自己需要的第三方应用程序并且上传到Windows Azure进行托管。

不论是Web Role,Worker Role还是VM Role,都可以设置一个以上的运行个体(instance),每个运行个体都是独立的虚拟机,Windows Azure Fabric Controller中的Load Balancer(平衡负载器)会自动分配负载到不同的instance中。也因为如此,不论是运行在Web Role上的Web应用程序,或是运行在Worker的服务应用程序,都要考虑可能的跨实体(cross instance)以及不同实体通信(inter-role or inter-instance communication)的设计。

分类: Azure Introduction
本文转自Lei Zhang的博客博客园博客,原文链接:http://www.cnblogs.com/threestone/archive/2012/01/17/2324972.html,如需转载请自行联系原作者

Windows Azure Platform Introduction (6) Windows Azure应用程序运行环境相关推荐

  1. Windows Azure Platform Introduction (9) 申请Windows Azure 账户

    <Windows Azure Platform 系列文章目录> Update:2017年12月27日,更新了最新的申请海外Azure账户的流程: Windows Azure Platfor ...

  2. 苹果IOS,与windows Phone7,系统,内存,CPU处理,及后台程序运行,详解微软墓碑机制的系统...

    关于ios的多任务以及内存管理 看了很多人为自己的可用内存是350mb还是380mb纠结.为了多优化出一点可用内存费脑筋. ios的任务管理和内存管理,跟windows是有很大差别的.很多人习惯于用  ...

  3. Windows Azure Platform Introduction (2) 云计算的分类和服务层次

    <Windows Azure Platform 系列文章目录> 云计算的分类(参考百度百科http://baike.baidu.com/view/1316082.htm#4) 云计算按照服 ...

  4. 在Windows 2003 IIS 6.0中配置PHP的运行环境(图)

    在Windows服务器上用什么论坛?相信不少朋友对这个问题答案的第一反应就是动网论坛.因为默认情况下Windows只能使用ASP语言编写的论坛程序,而凭借着强大的功能动网论坛可以说是撑起了Window ...

  5. windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境)

    推荐几款一键快速搭建PHP本地运行环境的好工具(含php7.0及apache,nigix,mysql) 首推phpstudy2016和wampServer3.0.6     理由支持php7.0 目前 ...

  6. windows 7 home basic 上安装iis 和php运行环境

    我有一部Dell 笔记本电脑,操作系统是windows 7 home basic, 我想在上面安装iis和php运行环境玩玩,按照网上说的方法,在控制面板里-->打开或关闭windows 功能. ...

  7. 微软Windows Azure Platform技术解析

    近两年IT领域里没有任何一项技术能够像云计算(Cloud Computing)一样引起如此多的关注,Google.Amazon.IBM.HP.Dell.Sun.Intel.Oracle和Microso ...

  8. Windows 8 IIS中配置PHP运行环境的方法

    这篇文章主要介绍了如何在Windows 8中通过iis8配置php运行环境,需要的朋友可以参考下 在Windows 8 的IIS(8.0)中搭建PHP运行环境: 一:安装IIS服务器 1.进入控制面板 ...

  9. Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)...

    <Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...

最新文章

  1. Outlook 2003中各个数据存储和配置文件的存放位置
  2. oracle 分段函数,transcad概述强大的交通gis.pdf
  3. alsa 测试 linux_Linux低延迟服务器系统调优
  4. pythorch基本信息查询
  5. python入门学习课程推荐
  6. mysql innodb索引覆盖_Mysql InnoDB 覆盖索引与回表
  7. 最全Pycharm教程
  8. eclipse不进入断点_Eclipse 调试中不支持运行到断点问题
  9. Silverlight 4 RC发布和详细更新
  10. AI 写代码来了 - github 的 AI 写代码插件 copilot 发布
  11. 极兔速递电子面单API接口-快递鸟
  12. IT 认证考试--软考--(中级项目)嵌入式系统设计师1:嵌入式系统设计师介绍
  13. php strict warning,PHP Warning: Unsupported declare 'strict_types' in ...
  14. Ethernet0没有有效的IP配置
  15. C#异步执行方法的几种方式
  16. 计算机爱好特长范文,【介绍个人性格爱好特长】_自我介绍(特长爱好)概述范文...
  17. 惊了 消息中间件合集:MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka+笔记
  18. 系统移植-(二)u-boot:启动过程做的工作(汇编阶段、C阶段)
  19. Win10能联网,但右下角网络图标变成小地球,显示无Internet连接的解决办法
  20. 信息化项目网络安全方案编制

热门文章

  1. linux 技巧:使用 screen 管理你的远程会话
  2. log4j打印mybatis sql语句
  3. 《统一沟通-微软-技巧》-20-Lync 2010如何在我的联系人列表中添加非联盟联系人...
  4. 潜移默化学会WPF--绘图 学习(一)
  5. Paging Library使用及原理
  6. Android通用简洁的下载器
  7. Confluence 6 配置 HTTP 超时设置
  8. createjs开发h5游戏: 指尖大冒险
  9. 获取各种常见形状的位图
  10. 修改CentOS7网卡名称为传统名称eth0格式(20170711更新)