第5章〓云计算的应用 本章介绍常见的云计算应用,包括亚马逊公司的弹性计算云、 微公司的Azure、谷歌公司的云计算平台、阿里云、IBM公司的蓝云云计算平台及清华大学的透明计算平台。 5.1概述 云计算资源规模庞大,服务器数量众多,并分布在不同的地点,同时运行着数百种应用,如何有效地管理这些服务器,保证整个系统提供不间断服务,是巨大的挑战。 云计算作为一种新型的计算模式,目前还处于早期发展阶段,众多提供商提供了各自基于云计算的应用服务。 “云应用”是“云计算”概念的子集,是云计算技术在应用层的体现。 “云应用”的工作原理是把传统软件“本地安装、本地运算”的使用方式变为“即取即用”的服务,通过互联网或局域网连接并操控远程服务器集群,完成业务逻辑或计算任务的一种新型应用。“云应用”的主要载体为互联网技术,以瘦客户端(thin client)或智能客户端(smart client)的形式展现,其界面实际上是HTML5、JavaScript等技术的集成。云应用不仅可以帮助用户降低IT成本,更能大大提高工作效率,因此传统软件向云应用转型的发展革新浪潮已经不可阻挡。 “云应用”具有“云计算”技术概念的所有特性,概括来讲分为以下3方面。 1) 跨平台性 大部分的传统软件应用只能运行在单一的系统环境中,例如,一些应用只能安装在Windows XP下,而对于较新的Windows 10、Windows 11系统,或Windows之外的系统,如macOS与Linux,又或是当前流行的Android与iOS等智能设备操作系统,则不能兼容使用。当今智能操作系统兴起,在传统计算机操作系统早已不是Windows XP “一统天下”的情况下,“云应用”的跨平台特性可以帮助用户大大降低使用成本,并提高工作效率。 2) 易用性 复杂的设置是传统软件的特色,一般情况下越是强大的软件应用其设置越复杂。云应用不仅完全有能力实现不输于传统软件的强大功能,而且把复杂的设置变得极其简单。云应用不需要用户进行如传统软件一样的下载、安装等复杂部署流程,更可借助与远程服务器集群时刻同步的“云”特性,免去用户永无休止的更新软件之苦。如果云应用有任何更新,用户只需简单地操作(如刷新一下网页),便可完成升级,并开始使用最新的功能。 3) 轻量性 安装众多的传统本地软件不仅会拖慢计算机,更带来了隐私泄露、木马病毒等诸多安全问题。“云应用”的界面说到底是HTML5、JavaScript等技术的集成,其轻量的特点保证了应用的流畅运行,让计算机重新快速运转。优秀的云应用提供了银行级的安全防护,将传统由本地木马或病毒所导致的隐私泄露、系统崩溃等风险降到最低。 其常见的提供商如下。 1. 我国云应用平台 我国云应用平台为中小型企业提供办公软件、财务软件、营销软件、推广软件、网络营销软件等的在线购买和快速部署,并提供免费的软件试用平台。其独有的应用软件与云计算服务器一体化的概念可以帮助企业快速部署各项软件应用,实现快速的云应用。 2. Gleasy Gleasy是一款面向个人和企业用户的云服务平台,可通过网页及客户端两种方式登录,乍看之下和计算机操作系统十分接近,其中包括即时通信、邮箱、OA、网盘、办公协同等多款云应用,用户也可以通过应用商店安装自己想要的云应用。 Gleasy由杭州格畅科技有限公司开发,该团队认为云应用已经十分普及,但始终无集中管理的平台,用户,特别是企业用户,需要一个登录一次即可解决日常应用需求的平台。 Gleasy的“一盘”云存储包括了在线编辑和直接共享等功能。 Gleasy从“系统”上看由3个层次组成,即基础环境、系统应用、应用商店和开放平台。 (1) 基础环境为运行和管理云应用的基础环境,包括Gleasy桌面、账号管理、G币充值与消费、消息中心等。 (2) 系统应用主要包含“一说”(即时通信)、“一信”(邮箱)、“一盘”(文件云存储及在线编辑)、联系人(名片、好友动态、个人主页)及记事本、表格等在线编辑工具,还包括图片查看器、PDF阅读器等辅助性工具。 (3) 应用商店和开放平台接近于计算机上的可安装软件或智能手机中的App。第三方应用经过改造后可入驻,目前有 美图秀秀、金山词霸、挖财记账、虾米音乐等。 3. 燕麦企业云盘(OATOS) 燕麦企业云盘一改云计算技术方案难懂、昂贵、部署复杂等缺点,通过潜心钻研把云计算方案变成“即取即用”的云应用程序,从而方便了企业的“云”信息化转型之路。燕麦企业云盘云应用程序包括云存储、即时通信、云视频会议、移动云应用(支持iOS及Android)等。 4. Google Apps for Business 谷歌公司是云应用的探路人,为云应用在企业(特别是在中小型企业)中的普及做出了卓越的贡献。谷歌企业云应用产品Google Apps for Business在全球已经拥有了400万企业客户。Google Apps for Business为企业提供了邮件、日程管理、存储、文档、信息保险箱等众多企业云应用程序。 5. Microsoft Office 365 传统企业办公软件龙头——Microsoft(微软)公司也在近期推出了其云应用产品Office 365,这预示着微软公司已经清楚地意识到云应用的未来发展价值。Office 365将微软公司旗下的众多企业服务器软件(如Exchange Server、SharePoint、Lync、Office等)以云应用的方式提供给客户,企业客户只需要按需付费即可。 5.2亚马逊公司的弹性计算云 亚马逊公司是全国互联网上最大的在线零售商,同时也为独立开发人员及开发商提供云计算服务平台。亚马逊公司将其云计算平台称为弹性计算云(Elastic Compute Cloud,EC2),这是最早提供远程云计算平台服务的公司。 5.2.1开放的服务 与亚马逊公司提供的云计算服务不同,谷歌公司仅为自己在互联网上的应用提供云计算平台,独立开发商或开发人员无法在这个平台上工作,因此只能转而通过开源的Hadoop软件支持来开发云计算应用。亚马逊公司的弹性计算云服务也和IBM公司的云计算服务平台不一样,亚马逊公司不销售物理的云计算服务平台,没有类似于“蓝云”一样的计算平台。亚马逊公司将自己的弹性计算云建立在公司内部的大规模集群计算的平台之上,用户可以通过弹性计算云的网络界面去操作在云计算平台上运行的各个实例(instance),而付费方式则由用户的使用状况决定,即用户仅需要为自己所使用的计算平台实例付费,运行结束后计费也随之结束。 弹性计算云从沿革上来看,并不是亚马逊公司推出的第一项这种服务,它由名为亚马逊网络服务的现有平台发展而来。早在2006年3月,亚马逊公司就发布了简单存储服务(Simple Storage Service,S3),这种存储服务按照每个月类似租金的形式进行服务付费,同时用户还需要为相应的网络流量进行付费。亚马逊网络服务平台使用REST(Representational State Transfer)和简单对象访问协议(Simple Object Access Protocol,SOAP)等标准接口,用户可以通过这些接口访问到相应的存储服务。 2007年7月,亚马逊公司推出了简单队列服务(Simple Queue Service,SQS),这项服务使托管主机可以存储计算机之间发送的消息。通过这一项服务,应用程序编写人员可以在分布式程序之间进行数据传递,而无须考虑消息丢失的问题。通过这种服务方式,即使消息的接收方还没有模块启动也没有关系。服务内部会缓存相应的消息,一旦有消息接收组件被启动运行,队列服务就将消息提交给相应的运行模块进行处理。同样,用户必须为这种消息传递服务进行付费,计费的规则与存储计费规则类似,依据消息的个数以及消息传递的大小进行收费。 2016年,亚马逊公司的云计算平台直接提供AI SaaS服务,意味着这方面的创业机会基本消失。 亚马逊云科技连续11年被Gartner评为“全球云计算领导者”,在2021年全新Gartner魔力象限中被评为“云基础设施与平台服务(IaaS & PaaS)领导者”。从计算、存储和数据库等基础设施技术,到机器学习、人工智能、数据湖和分析及物联网等新兴技术,亚马逊云科技提供了丰富完整的服务及功能。 亚马逊公司在提供上述服务时,并没有从头开始开发相应的网络服务组件,而是对公司已有的平台进行优化和改造,一方面满足了本身网络零售购物应用程序的需求,另一方面也供外部开发人员使用。 在开放了上述的服务接口之后,亚马逊公司进一步在此基础上开发了EC2系统,并且开放给外部开发人员使用。 5.2.2灵活的工作模式 亚马逊公司的云计算模式沿袭了简单、易用的传统,并且建立在亚马逊公司现有的云计算基础平台之上。弹性计算云用户使用客户端通过SOAP over HTTPS协议来实现与亚马逊公司弹性计算云内部的实例进行交互。使用HTTPS协议的原因是为了保证远端连接的安全性,避免用户数据在传输的过程中造成泄露。因此从使用模式上来说,弹性计算云平台为用户或者开发人员提供了一个虚拟的集群环境,使得用户的应用具有充分的灵活性,同时也减轻了云计算平台拥有者(亚马逊公司)的管理负担。 弹性计算云中的实例是一些真正在运行的虚拟服务器,每个实例代表一个运行中的虚拟机。对于提供给某一个用户的虚拟机,该用户具有完整的访问权限,包括针对此虚拟机的管理员用户权限。虚拟服务器的收费也是根据虚拟机的能力进行计算的,因此实际上用户租用的是虚拟的计算能力,简化了计费方式。在弹性计算云中提供了3种不同能力的虚拟机实例,具有不同的收费标准。例如,其中默认的最小的运行实例是1.7GB的内存,一个EC2的计算单元,160GB的虚拟机内部存储容量的一个32b的计算平台,收费标准为10C//h(C/为美分)。在当前的计算平台中还有两种性能更加强大的虚拟机实例可供使用,当然价格也更高。 由于用户在部署网络程序的时候一般会使用超过一个运行实例,需要很多个实例共同工作,在弹性计算云的内部也架设了实例之间的内部网络,使得用户的应用程序在不同的实例之间可以通信。在弹性计算云中每一个计算实例都具有一个内部的IP地址,用户程序可以使用内部IP地址进行数据通信,以获得数据通信的最好性能。每个实例也具有外部的地址,用户可以将分配给自己的弹性IP地址分配给自己的运行实例,使得建立在弹性计算云上的服务系统能够为外部提供服务。当然,亚马逊公司也对网络上的服务流量计费,计费规则按照内部传输以及外部传输分开。 5.2.3带来的好处 亚马逊公司通过提供弹性计算云,减少了小规模软件开发人员对于集群系统的维护,并且收费方式相对简单明了,用户使用多少资源,只需要为这一部分资源付费即可。这种付费方式与传统的主机托管模式不同。传统的主机托管模式让用户将主机放入托管公司,用户一般需要根据最大或者计划的容量进行付费,而不是根据使用情况进行付费,而且可能还需要保证服务的可靠性、可用性等,付出的费用更多,在很多时候,服务并没有被满额资源使用。根据亚马逊公司的模式,用户只需要为实际使用付费即可。 在用户使用模式上,亚马逊公司的弹性计算云要求用户创建基于亚马逊规格的服务器映像 ——亚马逊机器映像(Amazon Machine Image,AMI)。弹性计算云的目标是服务器映像能够拥有用户想要的任何一种操作系统、应用程序、配置、登录和安全机制,但是当前情况下,它只支持Linux内核。通过创建自己的AMI或者使用亚马逊公司预先为用户提供的AMI,用户在完成这一步骤后将AMI上传到弹性计算云平台,然后调用亚马逊的应用编程接口(API)对AMI进行使用与管理。AMI实际上就是虚拟机的映像,用户可以使用它们来完成任何工作,例如,运行数据库服务器,构建快速网络下载的平台,提供外部搜索服务,甚至可以出租自己具有特色的AMI而获得收益。用户所拥有的多个AMI可以通过通信彼此合作,就像当前的集群计算服务平台一样。 在弹性计算云将来的发展过程中,亚马逊公司也规划了如何在云计算平台之上帮助用户开发Web 3.0的应用程序。亚马逊公司认为除了它所依赖的网络零售业务之外,云计算也是亚马逊公司的核心价值所在。可以预见,在将来的发展过程中,亚马逊公司必然会在弹性计算云的平台上添加更多的网络服务组件模块,为用户构建云计算应用提供方便。 5.3Microsoft Azure 5.3.1简介 Windows Azure是微软公司基于云计算的操作系统,现在更名为Microsoft Azure,它和Azure Services Platform一样,是微软公司“软件和服务”技术的名称。Microsoft Azure的主要目标是为开发者提供一个平台,帮助开发可运行在云服务器、数据中心、Web和计算机上的应用程序。云计算的开发者能使用微软全球数据中心的储存、计算能力和网络基础服务。Azure服务平台包括以下主要组件: Microsoft Azure; Microsoft SQL数据库服务、Microsoft.Net服务; 用于分享、储存和同步文件的Live服务; 针对商业的Microsoft SharePoint和Microsoft Dynamics CRM服务。 Microsoft Azure是一种灵活和支持互操作的平台,它可以被用来创建云中运行的应用或通过基于云的特性来加强现有应用。它开放式的架构给开发者提供了Web应用、互联设备的应用、个人计算机、服务器或提供最优在线复杂解决方案的选择。Microsoft Azure以云技术为核心,提供了软件加服务的计算方法。它是Microsoft Azure服务平台的基础。Microsoft Azure能够将处于云端的开发者个人能力与微软全球数据中心网络托管的服务(如存储、计算和网络基础设施服务)紧密结合起来。 微软公司会保证Microsoft Azure服务平台自始至终的开放性和互操作性。笔者确信企业的经营模式和用户从Web获取信息的体验将会因此改变。最重要的是,这些技术将使用户有能力决定是将应用程序部署在以云计算为基础的互联网服务上,还是将其部署在客户端或根据实际需要将二者结合起来。 5.3.2Microsoft Azure的架构 Microsoft Azure是专为在微软建设的数据中心管理所有服务器、网络及存储资源所开发的一种特殊版本Windows Server操作系统,它具有针对数据中心架构的自我管理(autonomous)机能,可以自动监控划分在数据中心的数个不同的分区(微软公司将这些分区称为Fault Domain)的所有服务器与存储资源,自动更新补丁,自动运行虚拟机部署与镜像备份(snapshot backup)等。Microsoft Azure被安装在数据中心的所有服务器中,并且定时和中控软件(Microsoft Azure Fabric Controller)进行沟通,接收指令及回传运行状态数据等,系统管理人员只要通过Microsoft Azure Fabric Controller就能够掌握所有服务器的运行状态。Fabric Controller本身融合了很多微软系统管理技术,包含对虚拟机的管理(system center virtual machine manager)、对作业环境的管理(system center operation manager)以及对软件部署的管理(system center configuration manager)等,它们在Fabric Controller中被发挥得淋漓尽致,如此才能够达成通过Fabric Controller来管理数据中心中所有服务器的能力。 Microsoft Azure环境除了各种不同的虚拟机外,它也为应用程序打造了分散式的巨量存储环境(distributed mass storage),也就是Microsoft Azure Storage Services,应用程序可以根据不同的存储需求选择要使用哪一种或哪几种存储方式,以保存应用程序的数据,而微软公司也尽可能地提供应用程序的兼容性工具或接口,以降低应用程序移转到Windows Azure上的负担。 Microsoft Azure不仅是开发给外部的云应用程序使用的,它也作为微软许多云服务的基础平台,像Microsoft Azure SQL Database或Dynamic CRM Online这类在线服务。 5.3.3Microsoft Azure服务平台 Microsoft Azure服务平台现在已经包含网站、虚拟机、云服务、移动应用服务、大数据支持及媒体等功能的支持。 (1) 网站: 允许使用ASP.NET、PHP或Node.js构建,并使用FTP、Git或TFS进行快速部署,支持SQL Database、Caching、CDN及Storage。 (2) Virtual Machines: 在Microsoft Azure上可以轻松部署并运行Windows Server和Linux虚拟机,迁移应用程序和基础结构,而无须更改现有代码。它支持Windows Virtual Machines、Linux Virtual Machines、Storage、Virtual Network、Identity等功能。 (3) Cloud Services: Microsoft Azure中的企业级云平台,使用PaaS环境创建高度可用的且可无限缩放的应用程序和服务。它支持多层方案、自动化部署和灵活缩放,支持Cloud Services、SQL Database、Caching、Business Analytics、Service Bus、Identity。 (4) Mobile服务: Microsoft Azure提供的移动应用程序的完整后端解决方案,加速连接的客户端应用程序开发,在几分钟内并入结构化存储、用户身份验证和推送通知。它支持SQL Database、Mobile服务,并可以快速生成Windows Phone、Android或iOS应用程序项目。 (5) 大型数据处理: Microsoft Azure提供的海量数据处理能力,可以从数据中获取可执行洞察力,利用完全兼容的企业准备就绪Hadoop服务。此PaaS产品/服务提供了简单的管理,并与Active Directory和System Center集成。它支持Hadoop、Business Analytics、Storage、SQL Database及在线商店Marketplace。 (6) Media媒体支持: 支持插入、编码、保护、流式处理,可以在云中创建、管理和分发媒体。此PaaS产品/服务提供从编码到内容保护再到流式处理和分析支持的所有内容,支持CDN及Storage存储。 5.3.4开发步骤 1. 使用Windows Azure的专用工具 在微软公司的旗舰开发工具Visual Studio中有一套针对Microsoft Azure开发工作的工具,用户可以通过Visual Studio安装Microsoft Azure工具,具体的安装步骤可能因版本有所不同。当用户创建一个新项目时,能够选择一个Microsoft Azure项目并为自己的项目添加Web和Worker角色。Web角色是专为运行微软IIS实例设计的,而Worker角色则是针对禁用微软IIS的Windows虚拟机的。一旦创建了自己的角色,用户就可以添加特定应用程序的代码。 Visual Studio允许用户设置服务配置参数,如实例数、虚拟机容量、使用HTTP或使用HTTPS及诊断报告水平等。通常情况下,在启动阶段它可以帮助用户在本地进行应用程序代码的调试。与在Microsoft Azure中运行应用程序相比,在本地运行应用程序可能需要不同的配置设置,Visual Studio允许用户使用多个配置文件。用户所需要做的只是为每一个环境选择一个合适的配置文件。 这个工具包还包括了Microsoft Azure Compute Emulator,这个工具支持查看诊断日志和进行存储仿真。 如果Microsoft Azure工具中缺乏一个针对发布用户的应用程序至云计算的过程简化功能,那么这样的工具将是不完整的。这个发布应用程序至云计算的功能允许用户指定一个配置与环境(如生产)及一些先进的功能,如启用剖析和IntelliTrace,后者是一个收集与程序运行相关详细事件信息的调试工具,它允许开发人员查看程序在执行过程中发生的状态变化。 2. 专门为分布式处理进行设计 在开发和部署代码时,Visual Studio的Microsoft Azure工具是比较有用的。除此之外,用户应当注意这些代码是专门为云计算环境设计的,尤其是为一个分布式环境设计的。以下内容有助于防止出现将导致糟糕性能、漫长调试及运行时分析的潜在问题。 专门为云计算设计的分布式应用程序(或其他的网络应用程序)的一个基本原则就是不要在网络服务器上存储应用程序的状态信息。确保在网络服务器层不保存状态信息可实现更具灵活性的应用程序。用户可以在一定数量的服务器前部署一个负载均衡器而无须中断应用程序的运行。如果计划充分利用Microsoft Azure能够改变所部署服务器数量的功能,那么这一点是特别重要的。这一配置对于打补丁升级也是有所帮助的,用户可以在其他服务器继续运行时为一台服务器打补丁升级,这样一来就能够确保用户的应用程序的可用性。 即便是在分布式应用程序的应用中,也有可能存在严重影响性能的瓶颈问题。例如,用户的应用程序的多个实例有可能会同时向数据库发出查询请求。如果所有的调用请求是同步进行的,那么就有可能消耗完一台服务器中的所有可用线程。 C#和VB两种编程语言都支持异步调用,这一功能有助于减少出现阻塞资源风险的可能性。 3. 为最佳性能进行规划 在云计算中维持足够性能表现的关键就是一方面扩大运行的服务器数量,另一方面分割数据和工作负载。例如,无状态会话的设计功能就能够帮助实现数据与工作负载的分割和运行服务器数量的扩容,完全杜绝(或最大限度地减少)跨多个工作负载地使用全局数据结构将有助于降低在工作流程中出现瓶颈问题的风险。 如果要把一个SQL服务器应用程序迁往Microsoft Azure,那么应当评估如何最好地利用不同云计算存储类型的优势。例如,在SQL服务器数据库中存储二进制大对象( Binary Large Object, BLOB)数据结构可能是有意义的,而在Microsoft Azure云计算中,BLOB存储可以降低存储成本,且无须对代码进行显著修改。如果用户使用的是高度非归一化的数据模型,且未利用SQL服务器的关系型运行的优势(如连接和过滤),那么表存储有可能是用户为自己的应用程序选择的一个更经济的方法。 5.4谷歌公司的云计算平台与应用 谷歌公司的云计算技术实际上是针对谷歌公司特定的网络应用程序而定制的。针对内部网络数据规模超大的特点,谷歌公司提出了一整套基于分布式并行集群方式的基础架构,利用软件的能力来处理集群中经常发生的节点失效问题。 从2003年开始,谷歌公司连续几年在计算机系统研究领域的顶级会议与杂志上发表论文,揭示其内部的分布式数据处理方法,向外界展示其使用的云计算核心技术。从其近几年发表的论文来看,谷歌公司使用的云计算基础架构模式包括4个相互独立又紧密结合在一起的系统,即谷歌建立在集群之上的文件系统Google File System、针对谷歌公司应用程序的特点提出的Map/Reduce编程模式、分布式的锁机制Chubby及谷歌开发的模型简化的大规模分布式数据库BigTable。 5.4.1MapReduce分布式编程环境 为了让内部非分布式系统方向背景的员工能够有机会将应用程序建立在大规模的集群基础之上,谷歌公司还设计并实现了一套大规模数据处理的编程规范——MapReduce系统。这样,非分布式专业的程序编写人员也能够为大规模的集群编写应用程序,而不用去顾虑集群的可靠性、可扩展性等问题。应用程序编写人员只需要将精力放在应用程序本身,对于集群的处理问题则交由平台来处理。 MapReduce通过“Map(映射)”和“Reduce(化简)”这两个简单的概念来参加运算,用户只需要提供自己的Map函数及Reduce函数就可以在集群上进行大规模的分布式数据处理。 据称,谷歌公司的文本索引方法(即搜索引擎的核心部分)已经通过MapReduce的方法进行了改写,获得了更加清晰的程序架构。在谷歌公司内部,每天有上千个MapReduce的应用程序在运行。 5.4.2分布式大规模数据库管理系统BigTable 构建于上述两项基础之上的第三个云计算平台就是谷歌公司关于将数据库系统扩展到分布式平台上的BigTable系统。很多应用程序对于数据的组织还是非常有规则的。一般来说,数据库对于处理格式化的数据还是非常方便的,但是由于对关系数据库很强的一致性要求,很难将其扩展到很大的规模。为了处理谷歌公司内部大量的格式化以及半格式化数据,谷歌公司构建了弱一致性要求的大规模数据库系统BigTable。据称,现在谷歌公司有很多的应用程序建立在BigTable之上,如Search History、Maps、Orkut和RSS阅读器等。 BigTable模型中的数据模型包括行、列及相应的时间戳,所有的数据都存放在表格中的单元里。BigTable的内容按照行来划分,将多行组成一个小表,保存到某一个服务器节点中,这一个小表就被称为Table。 以上是谷歌公司内部云计算基础平台的3个主要部分,除了这3部分外,谷歌公司还建立了分布式程序的调度器、分布式的锁服务等一系列相关的云计算服务平台。 5.4.3谷歌的云应用 除了上述的云计算基础设施外,谷歌公司还在其云计算基础设施上建立了一系列新型网络应用程序。由于借鉴了异步网络数据传输的Web 2.0技术,这些应用程序给予用户全新的界面感受及更加强大的多用户交互能力。其中,典型的谷歌公司云计算应用程序就是谷歌公司推出的与Microsoft Office软件进行竞争的Docs网络服务程序。Google Docs是一个基于Web的工具,它有跟Microsoft Office相近的编辑界面,有一套简单易用的文档权限管理,而且它还可以记录下所有用户对文档所做的修改,Google Docs的这些功能使它非常适用于网上共享与协作编辑文档。Google Docs甚至可以用于监控责任清晰、目标明确的项目进度。当前,Google Docs已经推出了文档编辑、电子表格、幻灯片演示、日程管理等多个功能的编辑模块,能够替代Microsoft Office相应的一部分功能。值得注意的是,通过这种云计算方式形成的应用程序非常适合于多个用户共享及协同编辑,为一个小组的人员进行共同创作带来很大的方便。 Google Docs是云计算的一种重要应用,可以通过浏览器的方式访问远端大规模的存储与计算服务。云计算能够为大规模的新一代网络应用打下良好的基础。 虽然谷歌公司可以说是云计算的最大实践者,但是谷歌公司的云计算平台是私有的环境,特别是谷歌公司的云计算基础设施还没有开放出来。除了开放有限的应用程序接口,如GWT(Google Web Toolkit)及Google Map API等,谷歌公司并没有将云计算的内部基础设施共享给外部的用户使用,上述的所有基础设施都是私有的。 幸运的是,谷歌公司公开了其内部集群计算环境的一部分技术,使得全球的技术开发人员能够根据这一部分文档构建开源的大规模数据处理云计算基础设施,其中最有名的项目即Apache旗下的Hadoop。下面两个云计算的实现则为外部的开发人员及中小公司提供了云计算的平台环境,使得开发者能够在云计算的基础设施之上构建自己的新型网络应用: IBM公司的蓝云云计算平台是可供销售的计算平台,用户可以基于这些软/硬件产品自己构建云计算平台; 亚马逊公司的弹性计算云则是托管式的云计算平台,用户可以通过远端的操作界面直接使用。 5.5阿里云 阿里云是阿里巴巴集团旗下的云计算品牌,是全球卓越的云计算技术和服务提供商。它创立于2009年,在杭州、北京、美国硅谷等地设有研发中心和运营机构。 5.5.1简介 阿里云创立于2009年,是我国的云计算平台,服务范围覆盖全球200多个国家和地区。阿里云致力于为企业、政府等组织机构提供最安全、可靠的计算和数据处理能力,让计算成为普惠科技和公共服务,为万物互联的DT世界提供源源不断的新能源。 阿里云的服务群体包括微博、知乎、魅族、锤子科技、小咖秀等一大批明星互联网公司。在天猫“双11”全球狂欢节、“12306”春运购票等极具挑战性的应用场景中,阿里云保持着良好的运行记录。此外,阿里云在金融、交通、基因、医疗、气象等领域广泛输出一站式的大数据解决方案。 2014年,阿里云曾帮助用户抵御全球互联网史上最大的DDoS攻击,峰值流量达到453.8Gb/s。在Sort Benchmark 2015世界排序竞赛中,阿里云利用自研的分布式计算平台ODPS,377s完成100TB数据排序,刷新了Apache Spark 1406s的世界纪录。 2019年6月11日,阿里云入选“2019福布斯中国最具创新力企业榜”。 2022年1月27日,阿里云微信公众号发布消息称,北京冬奥会将通过阿里云向全球转播。截至成书时,阿里云已完成“转播云”的最后一轮全球网络测试。 阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算支持不同的互联网应用。目前,阿里云在杭州、北京、青岛、深圳、上海等城市及新加坡、美国、俄罗斯、日本等国家设有数据中心,未来还将在欧洲、中东等地设立新的数据中心。 5.5.2阿里云的主要产品 阿里云的产品致力于提高运维效率,降低IT成本,令使用者更专注于核心业务发展。 1. 底层技术平台 阿里云独立研发的飞天开放平台(Apsara)负责管理数据中心Linux集群的物理资源,控制分布式程序运行,隐藏下层故障恢复和数据冗余等细节,从而将数以千计甚至万计的服务器连成一台“超级计算机”,并且将这台超级计算机的存储资源和计算资源以公共服务的方式提供给互联网上的用户。 2. 弹性计算 (1) 云服务器(ECS): 一种简单、高效、处理能力可弹性伸缩的计算服务。 (2) 云引擎(ACE): 一种弹性、分布式的应用托管环境,支持Java、PHP、Python、Node.js等多种语言环境,帮助开发者快速开发和部署服务端应用程序,并简化系统维护工作。其搭载了丰富的分布式扩展服务,为应用程序提供强大助力。 (3) 弹性伸缩: 根据用户的业务需求和策略自动调整弹性计算资源的管理服务,其能够在业务增长时自动增加ECS实例,并在业务下降时自动减少ECS实例。 3. 云数据库(Relational Database Service,RDS) (1) 一种即开即用、稳定可靠、可弹性伸缩的在线数据库服务。基于飞天分布式系统和高性能存储,RDS支持MySQL、SQL Server、PostgreSQL和PPAS(高度兼容Oracle)引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案。 (2) 开放结构化数据服务(OTS): 构建在阿里云飞天分布式系统之上的NoSQL数据库服务,提供海量结构化数据的存储和实时访问。OTS以实例和表的形式组织数据,通过数据分片和负载均衡技术实现规模上的无缝扩展,应用通过调用OTS API/SDK或操作管理控制台来使用OTS服务。 (3) 开放缓存服务(OCS): 在线缓存服务,为热点数据的访问提供高速响应。 (4) 键值存储(KVStore for Redis): 兼容开源Redis协议的KeyValue类型在线存储服务。KVStore支持字符串、链表、集合、有序集合、哈希表等多种数据类型以及事务(Transactions)、消息订阅与发布(Pub/Sub)等高级功能。通过内存加硬盘的存储方式,KVStore在提供高速数据读/写能力的同时满足数据持久化需求。 (5) 数据传输: 支持以数据库为核心的结构化存储产品之间的数据传输。它是一种集数据迁移、数据订阅和数据实时同步于一体的数据传输服务。数据传输的底层数据流基础设施为数千下游应用提供实时数据流,已在线上稳定运行3年之久。 4. 存储与内容分发网络(Content Delivery Network,CDN) (1) 对象存储(OSS): 阿里云对外提供的海量、安全和高可靠的云存储服务。 (2) 归档存储: 作为阿里云数据存储产品体系的重要组成部分,致力于提供低成本、高可靠的数据归档服务,适合于海量数据的长期归档、备份。 (3) 消息服务: 一种高效、可靠、安全、便捷、可弹性扩展的分布式消息与通知服务。消息服务能够帮助应用开发者在他们应用的分布式组件上自由地传递数据,构建松耦合系统。 (4) CDN: 内容分发网络将源站内容分发至全国所有的节点,缩短用户查看对象的延迟,提高用户访问网站的响应速度与网站的可用性,解决网络带宽小、用户访问量大、网点分布不均等问题。 5. 网络 (1) 负载均衡: 对多台云服务器进行流量分发的负载均衡服务。负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 (2) 专有网络(VPC): 帮助用户基于阿里云构建出一个隔离的网络环境,可以完全掌控自己的虚拟网络,包括选择自有IP地址范围、划分网段、配置路由表和网关等,也可以通过专线/VPN等连接方式将VPC与传统数据中心组成一个按需定制的网络环境,实现应用的平滑迁移上云。 6. 大规模计算 (1) 开放数据处理服务(ODPS): 由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域。阿里巴巴的离线数据业务都运行在ODPS上。 (2) 采云间(DPC): 基于开放数据处理服务(ODPS)的DW/BI的工具解决方案。DPC提供全链路的易于上手的数据处理工具,包括ODPS IDE、任务调度、数据分析、报表制作和元数据管理等,可以大大降低用户在数据仓库和商业智能上的实施成本,加快实施进度。天弘基金、高德地图的数据团队基于DPC完成其大数据处理需求。 (3) 批量计算: 一种适用于大规模并行批处理作业的分布式云服务。批量计算可支持海量作业并发规模,系统自动完成资源管理、作业调度和数据加载,并按实际使用量计费。批量计算广泛应用于电影动画渲染、生物数据分析、多媒体转码、金融保险分析等领域。 (4) 数据集成: 阿里集团对外提供的稳定高效、弹性伸缩的数据同步平台,为阿里云大数据计算引擎(包括ODPS、分析型数据库、OSPS)提供离线(批量)、实时(流式)的数据进出通道。 7. 云盾 (1) DDoS防护服务: 针对阿里云服务器在遭受大流量的DDoS攻击后导致服务不可用的情况下推出的付费增值服务,用户可以通过配置高防IP将攻击流量引流到高防IP,确保源站的稳定、可靠。其免费为阿里云上的客户提供最高5GB的DDoS防护能力。 (2) 安骑士: 阿里云推出的一款免费的云服务器安全管理软件,主要提供木马文件查杀、防密码暴力破解、高危漏洞修复等安全防护功能。 (3) 阿里绿网: 基于深度学习技术及阿里巴巴集团多年的海量数据支撑,提供多样化的内容识别服务,能有效帮助用户降低违规风险。 (4) 安全网络: 一款集安全、加速和个性化负载均衡于一体的网络接入产品。用户通过接入安全网络可以缓解业务被各种网络攻击造成的影响,提供就近访问的动态加速功能。 (5) 网络安全专家服务: 在云盾DDoS高防IP服务的基础上推出的安全代为托管服务。该服务由阿里云云盾的DDoS专家团队为企业客户提供私家定制的DDoS防护策略优化、重大活动保障、人工值守等服务,让企业客户在日益严重的DDoS攻击下高枕无忧。 (6) 服务器安全托管: 为云服务器提供定制化的安全防护策略、木马文件检测和高危漏洞检测与修复工作。当发生安全事件时,阿里云安全团队提供安全事件分析、响应,并进行系统防护策略的优化。 (7) 渗透测试服务: 针对用户的网站或业务系统,通过模拟黑客攻击的方式,进行专业性的入侵尝试,评估出重大安全漏洞或隐患的增值服务。 (8) 态势感知: 专为企业安全运维团队打造,结合云主机和全网的威胁情报,利用机器学习,进行安全大数据分析的威胁检测平台,可以让客户全面、快速、准确地感知过去、现在、未来的安全威胁。 8. 管理与监控 (1) 云监控: 一个开放性的监控平台,可以实时监控用户的站点和服务器,并提供多种告警方式(短信、旺旺、邮件)以保证及时预警,为站点和服务器的正常运行保驾护航。 (2) 访问控制: 一个稳定、可靠的集中式访问控制服务,可以通过访问控制将阿里云资源的访问及管理权限分配给企业成员或合作伙伴。 9. 应用服务 (1) 日志服务: 针对日志收集、存储、查询和分析的服务。日志服务可收集云服务和应用程序生成的日志数据并编制索引,提供实时查询海量日志的能力。 (2) 开放搜索: 解决用户结构化数据搜索需求的托管服务,支持数据结构、搜索排序、数据处理自由定制。 (3) 媒体转码: 为多媒体数据提供的转码计算服务。它以经济、弹性和高可扩展的音/视频转换方法将多媒体数据转码成适合在PC、TV及移动终端上播放的格式。 (4) 性能测试: 全球领先的SaaS性能测试平台,具有强大的分布式压测能力,可模拟海量用户真实的业务场景,让应用性能问题无所遁形。性能测试包含两个版本,其中Lite版适合业务场景简单的系统,免费使用; 企业版适合承受大规模压力的系统,同时每月提供免费额度,可以满足大部分企业客户。 (5) 移动数据分析: 一款移动App数据统计分析产品,提供通用的多维度用户行为分析,支持日志自主分析,助力移动开发者实现基于大数据技术的精细化运营,提升产品质量和体验,增强用户黏性。 10. 万网服务 阿里云旗下的万网域名,连续19年蝉联域名市场第一,近1000万个域名在万网注册。除域名外,它还提供云服务器、云虚拟主机、企业邮箱、建站市场、云解析等服务。2015年7月,阿里云官网与万网网站合二为一,万网旗下的域名、云虚拟主机、企业邮箱和建站市场等业务深度整合到阿里云官网,用户可以在该网站上完成网络创业的第一步。 5.6IBM公司的蓝云云计算平台 IBM公司在2007年11月15日推出了蓝云云计算平台,为客户带来即买即用的云计算平台。它包括一系列的云计算产品,使得计算不仅局限在本地机器或远程服务器农场(即服务器集群)。它通过架构一个分布式、可全球访问的资源结构,使得数据中心在类似于互联网的环境下运行计算。 通过IBM公司的技术白皮书,大家可以一窥蓝云云计算平台的内部构造。蓝云云计算平台建立在IBM大规模计算领域的专业技术基础之上,基于由IBM软件、系统技术和服务支持的开放标准和开源软件。简单地说,蓝云云计算平台是基于IBM Almaden研究中心(Almaden Research Center)的云基础架构,包括Xen和PowerVM虚拟化、Linux操作系统映像及Hadoop文件系统与并行构建。蓝云云计算平台由IBM Tivoli软件支持,通过管理服务器来确保基于需求的最佳性能。这包括通过能够跨越多服务器实时分配资源的软件为客户带来一种无缝体验,加速性能,并确保在最苛刻环境下的稳定性。IBM公司新近发布的蓝云计划能够帮助用户进行云计算环境的搭建。它通过将Tivoli、DB2、WebSphere与硬件产品(目前是x86刀片服务器)集成,能够为企业架设一个分布式、可全球访问的资源结构。根据IBM的计划,首款支持Power和x86处理器刀片服务器系统的蓝云产品于2008年正式推出,并且随后推出基于System z大型主机的云环境,以及基于高密度机架集群的云环境。 在IBM的云计算白皮书上可以看到蓝云云计算平台的高层架构,如图5.1所示。 图5.1蓝云云计算平台的高层架构 可以看到,蓝云云计算平台由包含IBM Tivoli部署管理软件(Tivoli Provisioning Manager)、IBM Tivoli监控软件(IBM Tivoli Monitoring)、IBM WebSphere应用服务器、IBM DB2数据库及一些虚拟化的组件的数据中心组成。 蓝云云计算平台的硬件平台并没有什么特殊的地方,但是蓝云云计算平台使用的软件平台相较于以前的分布式平台 有所不同,主要体现在对于虚拟机的使用及对于大规模数据处理软件Apache Hadoop的部署。Hadoop是网络开发人员根据 谷歌公司公开的资料开发出来的类似于Google File System的Hadoop File System以及相应的Map/Reduce编程规范。现在正在进一步开发类似于谷歌公司的Chubby系统及相应的分布式数据库管理系统BigTable。由于Hadoop是开源的,所以可以被用户 直接修改,以适合应用的特殊需求。IBM公司的蓝云云计算平台产品则直接将Hadoop软件集成到自己本身的云计算平台之上。 5.6.1蓝云云计算平台中的虚拟化 从蓝云云计算平台的结构上还可以看出,在每个节点上运行的软件栈与传统的软件栈相比,一个很大的不同在于蓝云云计算平台内部使用了虚拟化技术。虚拟化的方式在云计算中可以在两个级别上实现,其中一个级别是在硬件级别上实现虚拟化。硬件级别的虚拟化可以使用IBM的P系列服务器,获得硬件的逻辑分区LPAR。逻辑分区的CPU资源能够通过IBM Enterprise Workload Manager来管理。这样的方式加上在实际使用过程中的资源分配策略,能够使相应的资源合理地分配到各个逻辑分区。P系列系统的逻辑分区的最小粒度是一个中央处理器(CPU)的1/10。 虚拟化的另一个级别可以通过软件来获得,在蓝云云计算平台中使用了Xen虚拟化软件。Xen也是一个开源的虚拟化软件,能够在现有的Linux基础之上运行另外一个操作系统,并通过虚拟机的方式灵活地进行软件部署和操作。 通过虚拟机的方式进行云计算资源的管理具有特殊的好处。由于虚拟机是一类特殊的软件,能够完全模拟硬件的执行,所以能够在上面运行操作系统,进而能够保留一整套运行环境语义。这样,可以将整个执行环境通过打包的方式传输到其他物理节点上,从而能够使得执行环境与物理环境隔离,方便整个应用程序模块的部署。从总体上来说,通过将虚拟化的技术应用到云计算的平台,可以获得以下良好的特性。 (1) 云计算的管理平台能够动态地将计算平台定位到所需要的物理平台上,而无须停止运行在虚拟机平台上的应用程序,这比采用虚拟化技术之前的进程迁移方法更加灵活。 (2) 能够更加有效率地使用主机资源,将多个负载不是很重的虚拟机计算节点合并到同一个物理节点上,从而能够关闭空闲的物理节点,达到节约电能的目的。 (3) 通过虚拟机在不同物理节点上的动态迁移,能够获得与应用无关的负载平衡性能。由于虚拟机中包含了整个虚拟化的操作系统以及应用程序环境,所以在进行迁移的时候带着整个运行环境,达到了与应用无关的目的。 (4) 在部署上也更加灵活,即可以将虚拟机直接部署到物理计算平台当中。 总而言之,通过虚拟化的方式,云计算平台能够达到极其灵活的特性,如果不使用虚拟化的方式则会有很多的局限。 5.6.2蓝云云计算平台中的存储结构 蓝云云计算平台中的存储体系结构对于云计算来说也是非常重要的,无论是操作系统、服务程序还是用户应用程序的数据,都保存在存储体系中。云计算并不排斥任何一种有用的存储体系结构,而是需要跟应用程序的需求结合起来获得最好的性能提升。从总体上来说,云计算的存储体系结构包含类似于Google File System的集群文件系统以及基于块设备方式的存储区域网络(SAN)系统两种。 在设计云计算平台的存储体系结构的时候,不仅仅是需要考虑存储的容量。实际上随着磁盘容量的不断扩充及硬盘价格的不断下降,使用当前的磁盘技术,可以很容易通过使用多个磁盘的方式获得很大的磁盘容量。相较于磁盘的容量,在云计算平台的存储中,磁盘数据的读/写速度是一个更重要的问题。单个磁盘的速度很有可能限制应用程序对于数据的访问,因此在实际使用的过程中需要将数据分布到多个磁盘之上,并且通过对于多个磁盘的同时读/写达到提高速度的目的。在云计算平台中,数据如何放置是一个非常重要的问题,在实际使用的过程中,需要将数据分配到多个节点的多个磁盘当中。 谷歌文件系统在前面已经做过一定的描述。在IBM公司的蓝云云计算平台中使用的是它的开源实现Hadoop HDFS(Hadoop Distributed File System)。这种使用方式将磁盘附着于节点的内部,为外部提供一个共享的分布式文件系统空间,并且在文件系统级别做冗余以提高可靠性。在合适的分布式数据处理模式下,这种方式能够提高总体的数据处理效率。谷歌文件系统的这种架构与SAN系统有很大的不同。 SAN系统是云计算平台的另外一种存储体系结构选择,在蓝云云计算平台上也有一定的体现,IBM公司提供SAN系统的平台能够接入蓝云云计算平台中。图5.2是一个SAN系统的结构示意图。 图5.2SAN系统结构示意图 SAN系统是在存储端构建存储的网络,将多个存储设备构成一个存储区域网络。前端的主机可以通过网络的方式访问后端的存储设备。而且,由于提供了块设备的访问方式,与前端操作系统无关。在SAN系统的连接方式上可以有两种选择: 一种选择是使用光纤网络,能够操作快速的光纤磁盘,适合于对性能和可靠性要求比较高的场所; 另一种选择是使用以太网,采取iSCSI协议,能够运行在普通的局域网环境下,从而降低了成本。由于存储区域网络中的磁盘设备并没有与某一台主机绑定在一起,而是采用了非常灵活的结构,所以主机可以访问多个磁盘设备,从而能够获得性能的提升。在存储区域网络中,使用虚拟化的引擎来进行逻辑设备到物理设备的映射,管理前端主机到后端数据的读/写。因此,虚拟化引擎是存储区域网络中非常重要的管理模块。 SAN系统与分布式文件系统(如Google File System)并不是相互对立的系统,而是在构建集群系统的时候可供选择的两种方案。其中,在选择SAN系统的时候,为了应用程序的读/写,还需要为应用程序提供上层的语义接口,此时就需要在SAN系统之上构建文件系统; 而Google File System正好是一个分布式的文件系统,因此能够建立在SAN系统之上。总体来说,SAN系统与分布式文件系统都可以提供类似的功能,如对于出错的处理等,至于如何使用还需要由建立在云计算平台之上的应用程序来决定。 5.7清华大学的透明计算平台 清华大学张尧学教授领导的研究小组从1998年开始就从事透明计算系统和理论的研究,到2004年前后正式提出,并不断完善了透明计算的概念和相关理论。 随着硬件、软件及网络技术的发展,计算模式从大型机的方式逐渐过渡到微型个人计算机的方式,并且近年来过渡到普适计算上,但是用户仍然很难获得异构类型的操作系统及应用程序,在轻量级的设备上很难获得完善的服务。在透明计算中,用户无须感知计算的具体所在位置及操作系统、中间件、应用等技术细节,只需要根据自己的需求,通过连在网络之上的各种设备选取相应的服务。图5.3显示了透明计算平台的3个重要组成部分。 图5.3透明计算平台的组成 用户的显示界面是前端的一些设备,包括个人计算机、笔记本电脑、Pad、智能手机等,统称为透明客户端。透明客户端可以是没有安装任何软件的裸机,也可以是装有部分核心软件平台的轻巧性终端。中间的透明网络则整合了各种有线和无线网络传输设施,主要用来在透明客户端与透明服务器之间完成数据的传递,用户无须意识到网络的存在。与云计算基础服务设施构想一致,透明服务器不排斥任何一种可能的服务提供方式,既可通过当前流行的计算机服务器集群方式来构建透明服务器集群,也可使用大型服务器等。当前透明计算平台已经达到了平台异构的目标,能够支持Linux及Windows操作系统的运行。用户具有很大的灵活性,能够自主选择自己所需要的操作系统运行在透明客户端上。透明服务器使用了流行的计算机服务器集群的方式,预先存储了各种不同的操作平台,包括操作系统的运行环境、应用程序及相应的数据。每个客户端从透明服务器上获取并建立整个运行环境,以满足用户对于不同操作环境的需求。由于用户之间的数据相互隔离,所以服务器集群可以选取用户相对独立的方式进行存储,使得整个系统能够扩展到很大的规模。在服务器集群上进行相应的冗余出错处理,很好地保护了每个用户的透明计算数据的安全性。 5.8小结 本章介绍了云应用的基本概念,详细介绍了典型的云应用案例。当前世界上的云应用案例不仅包括本章介绍的这些,还有许多本章未涉及的云应用案例,如新浪的云应用等。由于篇幅限制,本章只列举了部分典型的云应用案例供读者学习参考。通过学习本章,读者可知云应用还有非常广阔的开发空间,云应用目前发展迅速,需要对其多加关注。 习题 一、 选择题 1. “云应用”所具有的“云计算”技术概念的特性不包括()。 A. 跨平台性B. 开放性C. 易用性D. 轻量性 2. 谷歌公司所设计的大规模数据处理编程规范名为()。 A. Google File SystemB. Chubby C. MapReduceD. BigTable 3. IBM公司在2007年推出了()平台。 A. 弹性云计算B. 透明云计算 C. 蓝云云计算D. 阿里云计算 4. 透明客户端不包含()。 A. 计算机B. PadC. 手机D. 服务器 5. 下列不是透明计算平台的组成部分的是()。 A. 透明浏览器B. 透明客户端 C. 透明网络D. 透明服务器 6. 阿里云的所提供的云数据库RDS服务包括()。 A. 云服务器ECSB. 云引擎ACE C. 开放结构化数据服务OTSD. 对象储存OSS 7. 阿里云的云盾产品不包含()。 A. DDoS防护服务B. 访问控制服务 C. 安全网络服务D. 渗透测试服务 8. “云应用”的主要载体为()。 A. 互联网技术B. 数据库技术 C. 存储技术D. 虚拟机技术 9. 以下最早提供远程云计算平台服务的公司是()。 A. 谷歌B. 微软C. IBMD. 亚马逊 10. 以下对于虚拟化技术应用到云计算平台的优势描述错误的是()。 A. 云计算的管理平台能够动态地将计算平台定位到所需要的软件平台上 B. 能够更加有效率地使用主机资源 C. 通过虚拟机在不同物理节点上的动态迁移,能够获得与应用无关的负载平衡性能 D. 在部署上更加灵活,可以将虚拟机直接部署到物理计算平台当中 二、 判断题 1. Gleasy是一款面向企业用户的云服务平台,包括云储存、即时通信、云视频会议、移动云应用等功能。 () 2. 数据库对于处理格式化的数据较为方便,但由于对非关系数据库很强的一致性要求,很难将其扩展到很大的规模。() 3. 蓝云云计算平台内部使用了虚拟化技术,该技术可分别从硬件和软件两个级别上实现。() 4. 亚马逊公司的弹性计算云使用HTTPS的原因是为了保证远端连接的安全性。() 5. SAN系统和分布式文件系统是相互对立的系统。() 6. 阿里云是阿里巴巴集团旗下的云计算品牌,创立于2009年。() 7. 开放数据处理服务ODPS是阿里云最重要的产品。() 8. Microsoft Azure是专门开发作为微软在线的许多云服务的基础平台使用的。() 9. 专门为云计算设计的分布式应用程序的一个基本原则就是不要在网络服务器上存储应用程序的状态信息。() 10. 在Microsoft Azure云计算中,应用BLOB存储可以降低存储成本,但需要对代码进行较大的更改。() 三、 填空题 1. “云应用”是“云计算”概念的子集,是云计算技术在的体现。 2. 亚马逊公司将其云计算平台称为,其建立在公司内部的大规模集群计算的平台之上。 3. 存储区域网络(SAN)系统在连接方式上包括光纤网络和。 4. BigTable模型中的数据模型包括行、列及相应的时间戳,所有的数据都存放在里。 5. 谷歌的云应用借鉴了的Web 3.0技术。 6. 在用户使用模式上,亚马逊公司的弹性云计算要求用户创建基于亚马逊规格的。 7. 蓝云云计算平台包括了一系列产品,使得云计算不仅仅局限在。 8. 透明服务器使用了流行的计算机的方式,预先存储了各种不同的操作平台。 9. Microsoft Azure环境除了各种不同的虚拟机之外,也为应用程序打造了分散式的。 10. 在云计算中维持足够性能表现的关键就是一方面扩大运行的服务器数量,另一方面。 四、 简答题 1. 云应用有哪些特点? 2. 除了书中介绍的云应用外,还有哪些云应用?