技术开发 频道

让云触手可及 深入浅出解读微软云计算

  (2)Windows Azure Platform解决方案

  Windows Azure Platform 是一个运行在微软数据中心的云计算平台。它包括一个云计算操作系统和一个为开发者提供的服务集合。开发人员创建的应用既可以直接在该平台中运行,也可以使用该云计算平台提供的服务。相比较而言,Windows Azure platform延续了微软传统软件平台的特点,能够为客户提供熟悉的开发体验,用户已有的许多应用程序都可以相对平滑地迁移到该平台上运行。另外Windows Azure Platform还可以按照云计算的方式按需扩展,在商业开发时可以节省开发部署的时间和费用。

  Windows Azure platform包括Windows Azure、SQL Azure和Windows Azure platform AppFabric。Windows Azure可看成一个云计算服务的操作系统;SQL Azure是云中的数据库;AppFabric是一个基于Web的开发服务,它可以把现有应用和服务与云平台的连接和互操作变得更为简单。AppFabric让开发人员可以把精力放在他们的应用逻辑上而不是在部署和管理云服务的基础架构上。

  Windows Azure

  Windows Azure是一个云服务的操作系统,它提供了一个可扩展的开发环境、托管服务环境和服务管理环境,这其中包括提供基于虚拟机的计算服务和基于Blobs、Tables、Queues、Drives等的存储服务。Windows Azure为开发者提供了托管的、可扩展的、按需应用的计算和存储资源,还为开发者提供了云平台管理和动态分配资源的控制手段。Windows Azure是一个开放的平台,支持微软和非微软的语言和环境。开发人员在构建Windows Azure应用程序和服务时,不仅可以使用熟悉的Microsoft Visual Studio,Eclipse等开发工具,同时Windows Azure还支持各种流行的标准与协议,包括SOAP、REST、XML、和HTTPS等。

  Windows Azure主要包括三个部分,一是运营应用的计算服务;二是数据存储服务;三是基于云平台进行管理和动态分配资源的控制器(Fabric Controller)。

  .计算服务

  计算服务能够运行多种不同的应用,并支持大量并发用户的应用。Windows Azure提供计算服务的方式是根据需要把计算任务同时分配到多台虚拟服务器上。Windows Azure虚拟机运行64位的Windows Server 2008,由Hyper-V产品进行云中改造而来。开发者只要通过浏览器接入Windows Azure门户,用Windows Live ID进行注册登录,就可以开始使用平台提供的服务。

  Windows Azure应用包括Web Role Instance,Worker Role Instance和VM Instance,他们各自运行在不同类型的虚拟机中。

  Web Role Instance可以接受来自HTTP或HTTPS的需求,它运行在一个包括互联网信息服务(Internet Information Services,简称IIS)的虚拟机中,开发者能够运用ASP.NET、WCF、或其他与IIS相兼容的.NET技术创建Web Role Instance。同时,开发者也可以运用其他非.NET架构技术来创建、上传和运行应用,比如PHP。此外,Windows Azure提供负载均衡来实现基于Web Role Instance的相同应用的需求扩展。

  Worker Role Instance与Web Role Instance不同,它不能直接接受来自外部网络的连接,但它能读取来自Queue存储的信息。Worker Role Instance可被视为一个批处理任务,通过一个具体方法来实现。开发者可以同时使用Web Role Instance和Worker Role Instance或二者之一来创建一个Windows Azure应用。

  为了给用户提供更多的控制,同时也降低把部分现有应用迁移到Windows Azure的难度,Windows Azure还提供了一个VM Role。VM Role可以让用户自己直接控制和管理VM的环境,同时又可以充分利用Windows Azure平台带来的各种好处。

  . 存储服务

  Windows Azure 存储不是一个关系型数据系统,并且它的查询语言也不是SQL,它主要被设计用来支持建于Windows Azure上的应用,它提供更简单容易扩展的存储。存储服务应用可以通过很多不同方式来运用数据,Windows Azure Storage服务提供了多种选择,包括Blobs、Tables、Queues和Drives。

  Windows Azure存储数据最简单的方法是运用Blobs。Blobs非常便于存储二进制数据,比如JPEG图片或MP3文档等多媒体数据。Blobs适用于部分应用,但它对数据缺乏结构化,为了让应用能够以更易获取的方式来使用数据,Windows Azure Storage服务提供了Tables。它最大的不同之处是可扩展存储,通过多个虚拟机对分布式数据进行扩展和收缩,这比使用一个标准的关系型数据库更为有效。Blobs和Tables都是用于存储和接入数据,Queues则不同,Queues的主要功能是提供一种Web Role Instance和Worker Role Instance沟通的方式。而Drives的主要作用是为Windows Azure应用程序提供一个NTFS文件卷,这样应用程序可以通过NTFS API来访问存储的数据。提供这种Drives存储方式使得迁移已有应用程序到Windows

  Azure的过程变得更为平滑。无论数据以Blobs、Tables、Queues或Drives任何方式存储,Windows Azure Storage都会将所有数据复制三次,任何一个拷贝的丢失都不是致命的,任何一个应用都能够保证立即准确读取原始数据信息。

  Windows Azure platform AppFabric

  Windows Azure platform AppFabric为本地应用和云中应用提供了分布式的基础架构服务。在云计算中存储数据与运行应用都重要,但是我们还需要一个基于云的基础架构服务。这个基础架构服务应该既可以被客户自有软件应用,又能被云服务应用。Windows Azure platform AppFabric就是这样一个基础架构服务。AppFabric能够使客户自有应用与云应用之间进行安全联接和信息传递。它使得在云应用和现有应用或服务之间的联接及跨语言、跨平台、跨不同标准协议的互操作变得更加容易,并且与云提供商或系统平台无关。AppFabric目前主要提供互联网服务总线(Service Bus)和访问控制(Access Control)服务。

  SQL Azure

  SQL Azure是一个云的关系型数据库,它可以在任何时间提供客户数据应用。SQL Azure基于SQL Server技术构建,由微软基于云进行托管,提供的是可扩展、多租户、高可用的数据库服务。SQL Azure Database帮助简化多数据库的供应和部署,开发人员无需安装、设置数据库软件,也不必为数据库打补丁或进行管理。SQL Azure为用户提供了内置的高可用性和容错能力,且无需客户进行实际管理。SQL Azure Database支持TDS和Transact - SQL(T - SQL),客户可以使用现有技术在T – SQL上进行开发,还可以使用与现有的客户自有数据库软件相对应的关系型数据模型。SQL Azure Database提供的是一个基于云的数据库管理系统,它能够整合现有工具集,并提供与客户自有软件的对应性。

0
相关文章