Windows Azure平台简介(二):Windows Azure

 

公告:本博客为微软云计算中文博客的镜像博客。部分文章因为博客兼容性问题,会影响阅读体验。如遇此情况,请访问原博客

 

 


计算

Windows Azure的计算功能可以这样被使用:

作为一个部署服务的平台

用户可以在Windows Azure上部署自行开发的服务,例如使用WCF开发的Web Service,使用WF开发的工作流,使用ASP.NET开发的运行在服务器上的网站,等等。

作为一个软件分发平台

用户可以使用Windows Azure来分发自己的软件,例如0点击(无需用户操作)部属的SilverlightXBAPAJAX程序,但点击(Click Once)部署的WPFWindows Forms程序,甚至是提供一个安装包的下载链接。当然,为了充分利用云的特性,这些软件常常需要和部署在云端的服务进行交互。

作为一个一般的分布式计算平台

Windows Azure也可以作为一个一般的分布式计算平台来使用。Fabric提供了极其强大的负载平衡的支持,所以可以很好的执行一些极为复杂的并行算法。Windows Azure支持多种开发技术,例如.NETWin32,甚至是Java,从而满足大多数客户对分布式计算的需求。

针对开发人员,Windows Azure提供了一种叫做role的概念。每个role就可以被认为是一段程序,只是这段程序可以同时在一台或者多台机体上运行。每个role可以有多个实例(instance),每个实例就对应一台虚拟机。对同一个role而言,它所有的实例执行的程序都是相同的。

当前我们提供了两种类型的role,分别是Web RoleWorker Role。通常Web Role被用于部属服务以及分发软件,Worker Role则被用于执行分布式计算。

管理员可以很轻松的通过修改配置文件的方式来管理每个role需要运行几个实例。运行多个实例可以让你的程序更快地处理请求和执行任务,但是也意味着你需要支付更多的费用。当你不再需要那么多的计算资源的时候,你可以通过修改配置文件来减少实例的数量,从而支付较少的租金。这也正是云计算的一大优势,如果不使用云计算,你必须自行购买大量的硬件来处理更多的请求和执行更多的任务,当你不再需要那么多的计算资源的时候,这些硬件也就白白浪费在那里了。

存储

Windows Azure提供了四种存储服务:

Blob

初学者可以把blob比作文件系统。是的,它确实和文件系统有非常多的相似之处。Blob storage有两个概念:

·         Container:可以类比成文件夹

·         Blob:可以类比成文件

和文件系统一样,用户可以针对每个container设置访问权限,可以对某个blob进行加锁(lease)从而防止concurrency问题,还可以使用诸如创建,删除,复制,备份,等众多功能。

从存储结构上来说,我们提供了两种类型的blob

·         Block blob:其存储方式类似于传统的文件系统中的簇(cluster)的概念。一个blob被分成一个或多个block进行存储。

·         Page blobPage blob对随机读写进行了优化,大家可以把它类比成大型文件,例如.vhd.mdf文件。

Table

千万不要把table storage和关系型数据库混淆起来。Windows Azuretable storage提供了一种结构化的存储方式。通俗来说,一个table可以被想象成一个xml文件。在xml文件中我们存放各种各样的数据,在一个table中我们也可以存放各种各样的entity。同一个table可以存储结构完全不同的两个entity,这和关系型数据库中需要对每张表制定统一的schema是不同的。

Table storage的可变的schema充分体现出了其灵活性。例如,你的业务需要扩展,需要往数据结构中添加新的字段,你可以在完全不修改table schema,完全不影响现有entity的情况下,对新的entity添加新的字段。如果你的程序可以被二次开发,第三方开发人员也完全可以在不影响你的程序所需要的entity的情况下,在同一张表中存储他们的程序所需要的,结构不同的entity

Queue

Queue提供了一种先进先出的存储方式。它通常被用于各种不同的程序间的通信。例如一个经典的应用场景:Web Role接受用户请求,针对每个请求,在一个queue中创建一条消息(message)。Worker Role则不断的从queue中取出消息,并且一一处理。

Drive

目前尚处于beta阶段的drive storage让开发人员能够使用标准的NTFS API读写文件。一个drive可以被挂接(mount)到某个特定的实例上,当作该实例对应的虚拟机的一块硬盘使用。由于drive在后台是由page blob实现的,因此你往drive中写入的文件也会自动被写入后台的page blob。这样一来数据便得到了持久化,即使万一运行当前实例的虚拟机出了问题,你还可以在其它实例中再次挂接这块虚拟硬盘,数据并不会丢失。

需要注意的是,当前一个drive在同一时间只能被单个实例挂接。如果你需要在不同的实例中同时访问文件,还是推荐使用blobDive更常被用于移植现有的那些需要执行大量I/O操作的程序。

管理

管理员可以直接使用Windows Azure门户来管理他们的程序。门户提供了创建,删除项目,创建,删除,更新部署,等众多功能。此外,为了帮助大家更灵活地管理部署在Windows Azure上的程序,我们还提供了Management API,让开发人员自行开发程序来管理他们的部署。

今后,我们还会将System CenterWindows Azure集成,从而使得大家可以使用同一套工具,同时管理企业内部的服务器,以及云端的资产。

其他

Windows Azure还提供了诸多其他方面的功能,例如Diagnostics API等等。我们还在不停地更新这个平台。如果大家有什么好主意,欢迎用英文在http://www.mygreatwindowsazureidea.com/pages/34192-windows-azure-feature-voting上提出宝贵的建议。如果你觉得是用英文不方便,也可以直接在我们的博客上用中文留言,或者发邮件至afst@microsoft.com,我们会将你们的建议转达给产品组。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
内容简介 · · · · · · 《实战Windows Azure:微软云计算平台技术详解》来自于微软 Windows Azure MVP 的技术实践和心得体会,主要包括Windows Azure 平台的基础知识、使用方法、功能特点以及如何基于Windows Azure 平台设计高可靠、可扩展的应用程序,几乎涵盖了Windows Azure 平台的所有内容。全书分为8章,作者徐子岩试图通过一个贯穿始终的示例项目以尽量真实的视角介绍整个Windows Azure 平台。第1章和第2章包括云计算的基础知识和Windows Azure 平台的概述、计费模式和商业案例。第3章到第7章,通过完整的示例项目系统地介绍Windows Azure(计算服务、存储服务和部署调试)、SQL AzureWindows Azure AppFabric。最后一章介绍了Windows Azure平台的高级应用,包括更加深入的功能点、如何在项目中灵活使用Windows Azure 平台的各种功能,以及如何更好地构建基于Windows Azure 的应用程序。《实战Windows Azure:微软云计算平台技术详解》适合对云计算技术,特别是微软的 Windows Azure 平台有兴趣的架构设计人员以及一线开发人员阅读,同时也可作为Windows Azure 平台的参考书籍,也适合于有意采用Windows Azure 技术的公司决策人员和IT 人员参考阅读。 作者简介 · · · · · · 徐子岩(Shaun Xu),软件架构师,Microsoft Windows Azure MVP。专注于微软云计算平台、互联网应用、分布式系统和企业级系统架构的研究与实践,以及相关技术咨询和培训工作。Microsoft TechED和中国软件技术大会云计算讲师。希望尽自己的能力可以证明软件开发是艺术而非制造,目前热衷于云计算技术的研究和应用,确信云计算将会最终改变整个软件产业。 作者对.NET平台以及云计算技术有浓厚的研究兴趣和造诣,熟悉Windows Azure、ASP.NET MVC、WCF、LINQ、SQL Server、IIS和XML等,精通数据库应用系统、分布式系统和互联网系统的开发流程、技术体系和架构设计,对面向对象、设计模式和软件架构有长期的研究与实践经验。同时作者也对敏捷开发和单元测试有深入的研究和丰富的实践经验,坚定的认为单元测试是实现易扩展、低耦合设计的最佳途径和检验手段,是敏捷开发的基础和未来软件开发的趋势。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值