云平台简单综述

上传人:M****1 文档编号:564834005 上传时间:2022-12-03 格式:DOCX 页数:7 大小:20.62KB
返回 下载 相关 举报
云平台简单综述_第1页
第1页 / 共7页
云平台简单综述_第2页
第2页 / 共7页
云平台简单综述_第3页
第3页 / 共7页
云平台简单综述_第4页
第4页 / 共7页
云平台简单综述_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《云平台简单综述》由会员分享,可在线阅读,更多相关《云平台简单综述(7页珍藏版)》请在金锄头文库上搜索。

1、云平台简单综述 面向企业定义术语:什么是云平台?转向云计算,是业界将要面临的一个重大改变。各种云平台的出现是该转变的 最重要环节之一。顾名思义,这种平台允许开发者们或是将写好的程序放在“云” 里运行,或是使用“云”里提供的服务,或二者皆是。至于这种平台的名称,现在 我们可以听到不止一种称呼,比如按需平台(on-demand platform)、平台即服务等等。 但无论称呼它什么,这种新的支持应用的方式有着巨大的潜力。欲知个中缘由,我们先来看看目前应用平台是如何被使用的。开发团队在创建 一个户内应用,即时,该应用所需的许多基础都已经事先存在了:操作系统为执行 应用和访问存储等提供了基础支持;机构

2、里的其他计算机提供了诸如远程存储之类 的服务。倘若每创建一个户内应用都得首先构建所有这些基础的话,那么恐怕我们 今天看到的应用会少很多。同理,倘若每一个希望创建云应用的开发团队都得首先构建自己的云平台的话 那么我们今后看到的云应用将寥寥无几。幸运的是出现了一些致力于解决此问题的 厂商,今天有很多云平台技术可供我们使用。本文的主旨即从企业应用创建者的角 度来分类并简要介绍这些技术。实际环境中的云平台:三种云服务 为掌握云平台,我们先从大体上考察一下云服务。我们可以把通过“云”提供的服 务分为三大类。它们是:软件即服务应用是完全在“云”里运行的。其户内客户端通常是一个浏览器或 其他简易客户端。可能

3、是当前最知名的SaaS应用,不过除此以外也有许多其他应用。附着服务:每个户内应用自身都有一定功能,它们可以不时地访问“云”里针 对该应用提供的服务,以增强其功能。由于这些服务仅能为该特定应用所使用,所 以可以认为它们是附着于该应用的。一个著名的消费级例子就是苹果公司的iTunes: 其桌面应用可用于播放音乐等等,而附着服务令购买新的音频或视频内容成为可能。 微软公司的Exchange托管服务是一个企业级例子,它可以为户内Exchange服务器 增加基于“云”的垃圾邮件过滤、存档等服务。云平台:云平台提供基于“云”的服务,供开发者创建应用时采用。你不必构 建自己的基础,你完全可以依靠云平台来创建

4、新的SaaS应用。云平台的直接用户是 开发者,而不是最终用户。要掌握云平台,首先要对这里“平台”的含义达成共识。一种普遍的想法,是 将平台看成“任何为开发者创建应用提供服务的软件”。下一节,我们将对此作具 体讲解。应用平台的一般模型我们今天对应用平台的认识,主要来源于户内平台。因此,一种思考云平台的 方式,就是考察应用开发者在户内环境里所依赖的服务是如何转变为“云”的。无论在户内环境、还是在“云”里,我们可以认为一个应用平台包含以下三个 部分:一个基础:几乎所有应用都会用到一些在机器上运行的平台软件。各种支撑功 能(如标准的库与存储,以及基本操作系统等)均属此部分。一组基础设施服务:在现代分布

5、式环境中,应用经常要用到由其他计算机提供 的基本服务。比如提供远程存储服务、集成服务及身份管理服务等都是很常见的。一套应用服务:随着越来越多的应用面向服务化,这些应用提供的功能可为新 应用所使用。尽管这些应用主要是为最终用户提供服务的,但这同时也令它们成为 应用平台的一部分。(也许你要奇怪,为什么要把别的应用视为平台的一部分,但在 面向服务的世界里是这样的。)虽然他们不是在图2所示,开发工具也是另一个重要部分。现代工具可以帮助开发者们运用应用平台的这三个部分来构建应用。为了对这个抽象模型有具体的认识,下面我们将它与今天主流的户内平台加以 对照。户内基础包括有:操作系统:Windows、Linu

6、x及其它版本的Unix是主流选择。本地支持:不同风格的应用采用不同的技术。例如,.NET框架和Java EE应用服 务器为Web应用等提供了一般性支持,而其它技术则面向特定类型的应用。比如 Microsoft Dynamics CRM产品提供了一个为创建特定类型的商业应用而设计的平台。 类似地,不同种类的存储被用于不同目的。Windows、Linux及其它操作系统里的文 件系统提供了原始字节的存储功能,而各种数据库技术比如Oracle DBMS、MySQL、 Microsoft SQL Server及IBM DB2等则提供了更加结构化的存储功能。对于户内基础设施服务,典型例子包括: 存储:跟基

7、础里的存储一样,基础设施里的存储也分为多种风格。远程文件系 统可以提供简单的面向字节的存储,而Microsoft SharePoint文档库可以提供更加结 构化的远程存储服务。应用也可以远程访问数据库系统,从而能够访问其他种类的 结构化存储。集成:把机构内部的应用连接起来,通常要依赖于某种集成产品提供的远程服 务。比如,消息队列是一个简单的例子, IBM 的 WebSphere Process Server 及微软的 BizTalk Server等产品可用于更加复杂的场景。身份管理:对许多分布式应用而言,提供身份信息是一个最基本的需求。常见 的解决此问题的户内技术包括微软的Active Dir

8、ectory(活动目录)及其它LDAP(轻量级 目录访问协议)服务器。至于户内应用服务,不同机构间差别很大。原因很简单:不同机构使用的是不 同的应用,因而它们暴露的服务也五花八门。对于这些户内平台里的应用,一种思 考方式是将它们分成两大类:套装软件:这包括像 SAP、 Oracle Applications、 Microsoft Dynamics 在内的许多 商业软件,以及许许多多现成的产品。虽然不是所有套装软件都向其它应用暴露服 务,但越来越多的套装软件是这么做的。定制应用:许多机构对定制软件进行了大笔投资。随着这些应用逐渐将其功能 以服务的形式暴露出来,它们也将成为户内应用平台的一部分。照

9、此描述,户内应用平台看起来好像挺复杂的。但实际上,它也是随着时间的 发展而不断演化的。在计算技术的早期,应用平台只包含一个户内基础比如IBM主 机上的MVS和IMS。到了八、九十年代,随着分布式计算的普及,户内基础设施服 务也加入了进来。时至今日,随着面向服务的应用的出现,户内应用服务也成为应 用平台的一部分了。下一步发展是毫无疑问的,即在“云”里提供这三个部分。从户内平台到云平台 上面那个一般模型描述的是户内平台,但它同时也可被用来考察云平台。另外, 因为户内平台与云平台可以一同使用,所以理解它们如何一起工作也是十分重要的。 图 3显示了这个新的系统。正如户内应用是构建于户内基础之上的,云应

10、用也可以构建于云基础之上。无 论是户内环境、还是“云”里的基础设施与应用服务,均可为这两种应用所使用。 户内平台为我们今天的应用提供支持,类似地,云平台为我们明天将构建的应用提 供服务。考察云平台理解云平台,意味着要考察其各个部分:云基础、云基础设施及云应用服务。 本节将以今天能看到的云平台技术为例,依次考察这三个部分。在我们开始之前,有一个点需要注意:虽然是从同一个视角来考察户内平台与 云平台的,但它们是两样不同的东西。随着平台功能转移到“云”里去,它们有时 会发生重要改变。比如,户内平台顶多是用以支持企业级应用的;而运行在“云” 里的应用则可以潜在地支持 Internet 规模,这要比企业

11、应用处理更多并发请求。虽 然也许这两种情况都需要同样的平台功能,但由于云平台对伸缩性的高要求,所以 必须采取不同的方式来提供这些功能。下面,我们将看到“云”与户内环境的一些 区别。云基础与户内基础相似,云基础提供了应用所需的一些基本的本地功能,包括下层操 作系统和本地支持。但正如下面将讲到的,云平台提供这些功能的方式跟我们所习 惯的方式有所不同。操作系统以平台的观点来看,一个操作系统提供了一套基本接口,供各应用使用。目前 最知名的一个云操作系统的例子就是Amazon的Elastic Compute Cloud(弹性计算云, 简称EC2)。EC2为用户提供以虚拟机(VM)形式运行的专用Linux

12、实例。从技术上看, 将EC2视为一种虚拟机平台更准确一点。尽管如此,由于开发者可以看到它提供的 操作系统接口,所以不妨就把它视为操作系统。各个开发团队可以自由随意使用虚拟机里提供的本地支持Amazon不会管你。比如,有的应用创建者可能会采用Java EE应用服务器和MySQL,有的会选择 Ruby on Rails。EC2用户甚至可以随意创建多个Linux实例,然后将巨大的作业量(比 如科学计算)并行分布在这些实例上运行。虽然EC2提供的服务非常基础,但同时也 具有相当的一般性,因而可被用于多种不同方式。本地支持(Local Support)在户内平台(及EC2)里,开发者可以自由混合使用基础

13、里的各个部分。比方说, 选择采用基于Windows的.NET框架并不意味着必须采用特定的数据库。与此类似, 一个采用.NET框架的户内应用可以自由访问下层的Windows操作系统,基于Java EE 服务器构建的应用也是同样。在今天主流的云基础里,本地支持功能不是这样的。相反,云本地支持技术一 般都包含自己的存储,而且它隐蔽了下层操作系统的细节。开发者若选择基于特定 的本地支持方案,那他就必须接受该方案施加的约束。当然,施加这些约束是有充足理由的。云计算吸引人的一点就在于它在可伸缩 性方面的潜力,但是,要令一个构建于云基础之上的应用能够处理Internet规模的 工作量,就必须施加某种约束。通

14、过使本地支持功能更加专业化,云平台提供商在 优化应用环境时将有更大的自由。因此,现在云基础里的各种本地支持功能均专注 于支持特定种类的应用。例如, Google 的 AppEngine 为运行 Python Web 应用提供了本地支持。除了标准 的 Python 运行时环境, AppEngine 还包含一个层次化的数据存储以及相应的查询语 言。F(由S提供)是另一个提供本地支持的云平台的例子。 F不是面向一般的Web应用的,相反,它用于创建面向数据的商业应用。 为达到这个目的,它自己在提供数据存储支持时有自己明确的目标。而且,这个平 台不是采用现有的编程语言,而是自己发明了一门叫做Apex的语

15、言。微软也在其CRM Live产品里为“云”里的应用提供本地支持。这项技术是基于 前面提到的Dynamics CRM的,它跟F差不多,也是以面向数据的商业应用 为目标的。跟F和AppEngine 一样,它既包含运行时应用支持,也包含数 据存储。微软说它们准备在此领域进一步大显身手:他们将提供一个支持标准.NET 开发语言和工具的平台。微软说,其用意是允许应用与开发技能在户内基础与云基 础之间相互移植。云基础设施服务无论在户内环境里、还是在“云”里,有些应用只要有基础就够了。尽管如此 分布式存储、公共身份管理以及其他基础设施服务可以给许多应用带来好处。现在 我们已经习惯于由户内环境提供这些服务了

16、,但类似的服务也可以在“云”里提供。正如图 3所示,云基础设施服务既可以被运行在户内基础上的应用访问,也可 被运行在云基础上的应用访问。最初,由于在云基础上构建的应用还不多,所以户 内应用将成为云基础设施服务的主要用户。但随着时间的推移,这是会变化的,因 为会有越来越多基于云的应用使用云基础设施服务。存储应用使用某种本地存储是很普遍的,这就是为什么存储既属于户内基础、又属 于云基础的原因。然而,正如存储服务在户内环境中很受欢迎一样,远程存储也很 有用。因此,我们有理由预期,在“云”里提供存储服务将受到许多应用的欢迎。跟户内平台一样,“云”里的远程存储也有不同的风格。例如, Amazon 的 Simple Storage Service(简单存储服务,简称S3)提供了基本的非结构化远程存储。它

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号