友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
云计算-第2部分
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!
P2P是一个平等的概念。在P2P环境中,每台计算机既是客户机又是服务器,没有主从之分。P2P把网络上的所有计算机都看作是对等的,因而使得直接的资源和服务交换成为可能。无需中央服务器的存在,因为任何一台电脑在需要的时候都能充当这一角色。
P2P也是一个分散的概念。控制是分散的,所有电脑平等运行。内容也分散在不同的电脑上。没有集中的服务器用来承载可用的资源和服务。
第一章 超越桌面:云计算导论(4)
也许最著名的P2P实现就是因特网。今天,许多用户都已经忘记(或根本未曾知道),根据最早的阿帕网(ARPAnet)的想法,因特网最初被设计为一个对等的系统,用来共享分布在美国各地的计算资源。不同的阿帕网站点——总数并不是很多——不是作为客户端和服务器,而是作为对等方连接在一起。
早期因特网的P2P特性可以通过新闻组(Usenet)网络来做最好的说明。新闻组,创建于1979年,是一个由计算机构成的网络(通过因特网访问),每台计算机都提供整个网络的内容。信息在对等的计算机之间进行传播,无论用户连接到哪一台新闻组服务器上,都可以获得张贴到每个单独的服务器上的所有(或几乎所有)的信息。虽然用户到新闻组服务器的连接具有传统的客户机/服务器特性,但新闻组服务器之间的关系肯定是P2P的,这就是今日云计算的雏形。
当然,并非因特网的每一部分都具有P2P特性。随着万维网的发展,计算模式由P2P重新回到客户机/服务器模式。在web上,每个网站都由一组计算机提供服务,网站的访问者使用客户端软件(web浏览器)来访问它。几乎所有的内容都是集中的,所有的控制也是集中的,在此过程中,客户没有任何自主权或控制能力。
分布式计算:提供更多的计算能力
P2P模式的一个最重要的方面就是分布式计算,某个网络甚至整个因特网上的空闲个人电脑被组织起来,用来为大规模的、处理器密集型的项目提供计算能力。这是一个简单的概念,所有的一切都围绕着计算能力在多台计算机之间的共享。
一台每天运行24小时,每周运行7天的个人电脑能产生巨大的计算能力。然而,大多数人并不会以24/7的方式使用自己的计算机,因而计算机资源的很大一部分都未得到有效利用。分布式计算能够使用这些资源。
当一台计算机用于分布式计算项目时,为了在电脑空闲期间执行各种处理任务,需要在机器上安装软件。空闲时间处理的结果定期上传到分布式计算网络中,与来自项目中其他计算机的类似结果进行合并。只要有足够的计算机参与,上述做法的效果足以比拟更大的主机和超级计算机的处理能力——对于某些非常庞大和复杂的计算项目而言,这是必需的。
例如,基因研究需要大量的计算能力。采用传统的手段,可能需要数年时间才能解决基本的数学问题。通过将数千(或百万)台个人电脑连接在一起,将更多的计算能力用于同样的问题,很快就能得到结果。
分布式计算的历史可以追溯到1973年,当时施乐公司帕洛阿尔托研究中心(Xerox PARC)将实验室里的多台计算机连接到一起并开发了蠕虫软件来漫游网络,寻找闲置的资源。一个更为实用的分布式计算应用出现在1988年,当时DEC(数字设备公司)系统研究中心的研究人员开发了一款软件,用来向实验室内的工作站分发大数分解任务。到了1990年,一个约100个用户的小组利用这一软件,完成了一个100位数的因数分解。到1995年,该应用已扩展到web,用于130位数的因数分解。
分布式计算与因特网相结合的时间并没有多久。第一个主要以因特网为基础的分布式计算项目是发起于1997年的,它利用数千台个人计算机来破解密码。更大型的项目是发起于1999年5月的搜寻地外文明的SETI@home计划,它连接了数百万台个人计算机,用来搜寻太空智能生命。 。 想看书来
第一章 超越桌面:云计算导论(5)
许多分布式计算项目是在大型企业内部进行的,利用传统的网络连接形成分布式计算网络。其他更大的项目利用日常因特网用户的计算机,计算通常离线进行,然后通过传统的因特网连接每天上传一次。
协同计算:作为一个群组工作
从早期的客户机/服务器计算再到P2P的发展,始终存在这样的需求——让多个用户一起从事同一个基于计算机的项目。这种类型的协同计算就是云计算背后的驱动力,它已经存在超过10年了。
早期的群组协作综合利用几种不同的P2P技术,目的是让多个用户能够实时的、在线合作完成小组项目。
要在项目上合作,用户必须首先能够相互交谈。在今天,这指的是即时消息系统,除用于文本交流外,通常还具有可选的音频/电话和视频能力,用来进行基于语音和图像的交流。大多数协作系统为全功能的多用户视频会议提供了一系列的音频/视频选项,。
此外,用户必须能够共享文件并让多个用户同时在相同的文档上开展工作。白板也很常见,在企业和教育环境中更是如此。
注意
白板提供了一个对所有群组成员可见的虚拟写字板,允许一个或多个用户在上面“画画”。
早期的群组协作系统既有相对简单的(如Lotus Notes和微软的NetMeeting),也有极其复杂的(如Groove Networks系统中的积木结构)。多数系统是针对大型企业的,只能在公司专用的网络上运行。
云计算:协作的下一个步骤
随着因特网的发展,群组协作没有必要限制在单一的企业网络环境。来自公司内多个地点或来自多个组织的用户需要进行跨公司和跨地域界限的项目合作。要做到这一点,项目必须被安置在因特网“云”中,从任何能够上网的地点访问。
以云为基础的文档和服务的概念随着大型服务器农场(如谷歌和其他搜索公司拥有的)的发展而迅速发展。谷歌已经有了一组服务器,用于支持大量的搜索引擎。为什么不能使用相同的计算能力来驱动一组基于web的应用,并支持新的基于因特网的群组协作呢?
这就是已经发生的,尽管谷歌并不是唯一的提供云计算解决方案的公司。在基础设施方面, IBM,Sun系统公司和其他大的供应商正在提供建设云网络的必要硬件。在软件方面,许多公司正在开发基于云的应用和存储服务。
今天,人们使用云服务和云存储来创建,共享,查找和组织各种不同类型的信息。明天,这一功能不仅仅对计算机用户,而且对任何连接到因特网的设备——移动电话,便携式音乐播放器,甚至汽车和家用电视机——的用户可用。
注意
云计算是一个相对较新的术语,在2007年为人们所熟知,用于描述基于因特网的分布式计算及其相关应用。
网络就是计算机:云计算如何工作
Sun微系统公司的口号是“网络就是计算机”,这一口号很好的描述了云计算的工作方式。从本质上讲,计算机网络的职能类似一*立的计算机,主要用来在因特网上向用户提供数据和应用程序服务。该网络存在于由IP地址构成的“云”——也就是我们所知道的因特网中,对外提供大规模的计算能力和存储能力,从而使得广域范围内的群组协作成为可能。
以上只是一个简单的解释。接下来让我们仔细看一下云计算是如何工作的。
第一章 超越桌面:云计算导论(6)
认识云架构
云计算的关键是“云”——一个大规模的、由服务器甚至是个人计算机构成的网络,这些服务器和个人计算机在网格环境中互联在一起。这些计算机并行运行,各自的资源结合起来形成足可比拟超级计算机的计算能力。
注意
云计算的一个主要好处就是从成本相对较低的个人电脑和服务器中获得大量的计算能力。当你利用云的能力时,只需支付PC的价格就能获得超级计算的能力。
那么,究竟什么是“云”呢?简而言之,云就是一组可以通过因特网公开访问的计算机和服务器。这些硬件通常归第三方所有,放在一个或多个数据中心里联合运营。这些机器能够运行各种操作系统,重要的是机器的处理能力而不是桌面的样子。
如图所示,个人用户利用自己的个人电脑或便携设备,经由因特网连接到云中。对这些个人用户而言,云是一个独立的应用、设备或文件。云中的硬件(以及管理这些硬件连接的操作系统)是不可见的。
图 用户如何连接到云中
Cloud Servers:云服务器
尽管云架构确实需要一些智能化管理来连接所有这些电脑并处理众多用户的任务,但它看上去非常简单。如同你在图中看到的,所有的一切均始于个人用户见到的前端界面。首先,用户通过界面选择一个任务或服务(启动一个应用程序或打开一个文件)。而后,用户的请求被发送给系统管理,系统管理找出正确的资源并调用合适的系统服务。这些服务从云中划分出必要的资源,加载相应的web应用程序,创建或打开所要求的文件。web应用启动之后,系统的监测和计量功能跟踪云的使用,确保资源分配和归属于合适的用户。
图 云计算系统的幕后架构
User:用户;User Interface:用户接口;System Management:系统管理
Provisioning Services: 对外服务;Cloud Servers:云服务器;
Web Application:网络应用
正如你所看到的,云计算这一概念的关键就是许多管理任务的自动化。如果一个系统需要人来管理资源分配的过程,那么它就不是云。这方面的一个例子就是二十一世纪版的老式数据中心为基础的客户机/服务器计算。要使它变成云,手动管理必须被自动化流程所取代。
认识云存储
云计算的一个主要用途就是存储数据。利用云存储,数据被存放到多个第三方的服务器上,而不是像传统的网络数据存储那样存放在专用的服务器上。
存储数据时,用户看到的是一个虚拟的服务器,也就是说,看起来数据好像是以特定的名称存放在某一特殊的地方,但在现实中,那个地方并不存在。这只是一个假名,用来指示云中划分出来的虚拟空间。实际上,用户的数据可以存储在构成云的任何一台或多台电脑上。因为云动态的管理可用的存储空间,实际的存储位置可能每天甚至每分钟都不相同。但是,尽管位置是虚拟的,用户所看到的数据位置是“固定的”,事实上,他可以管理自己的存储空间,就好像它是连接到自己的电脑一样。
云存储同时具有经济和安全方面的优势。从经济上说,虚拟的云资源通常比那些连接到个人电脑或网络的专用物质资源更便宜。至于安全,由于数据被复制到多台物理机器上,存储在云里的数据不受意外删除或硬件崩溃的困扰。由于始终保留数据的多个副本,即使一台或多台机器进入脱机状态,云仍然能够继续正常运行。如果一台机器崩溃了,数据就会被复制到云中的其他机器上。
第一章 超越桌面:云计算导论(7)
认识云服务
通过云计算提供的任何基于web的应用或服务都称之为云服务。云服务可包括从日历和联系人应用到文字处理和演示的任何东西。几乎今天所有从事大型计算的公司,从谷歌到亚马逊到微软,都在开发各种类型的云服务。
利用云服务,应用程序本身就处在云中。个人用户在因特网上运行应用,通常是通过web浏览器。浏览器访问云服务,在浏览器的窗口中打开一个应用实例。一旦启动,基于web的应用操控和运行就像一个标准的桌面应用程序。唯一不同的是,应用程序和工作文档驻留相应的云服务器上。
云服务具有诸多优势。如果用户的电脑崩溃了,它既不会影响到宿主应用程序,也不会影响到打开的文件。此外,个人用户可以从任何地点使用任何PC访问他的应用程序和文件。当他从办公室回到家或更偏远的地方,他不必随身携带每个应用程序和文件的副本。最后,因为文件都放在云里,用户可以利用任何可用的因特网连接在同一文件上进行实时协作。文档不再以机器为中心。相反,他们对于授权的用户总是可用。
云中的公司:云计算现状
目前,我们正处在云计算革命的初期阶段。尽管已经有许多可用的云服务,更多的有趣的应用仍在开发之中。也就是说,今天的云计算正在吸引着整个计算行业最优秀、最大的企业,他们都希望建立基于云来赢利的商业模式。
正如本章前面讨论过的,也许目前正在拥抱云计算模式的最引人注目的公司是谷歌。正如你将通过本书所看到的,谷歌提供了一组功能强大的基于web的应用,他们都通过其云架构对外服务。无论你是需要基于云的文字处理(谷歌文档)、演示软件(谷歌演示文稿)、电子邮件(Gmail),还是日历/日程安排功能(谷歌日历),谷歌都有提供。而且最重要的是,谷歌为它的所有基于web的应用都提供了相互之间的接口,为了用户的利益,这些云服务相互关联。
其他大公司也参与了云服务的开发。例如,微软提供了Windows Live web应用套件以及Live Mesh计划,该计划承诺将各种类型的设备,数据和应用连接到一个公共的基于云的平台。亚马逊推出了弹性计算云(EC2)服务,用来为应用开发人员提供以云为基础的可调整的计算能力。IBM已经成立了一个云计算中心,用来向客户提供云服务和研究。许多较小的公司也都推出了自己的基于web的应用,他们主要(但不完全)利用云服务的协作特性。
正如我们通过这本书,我们会研究其中的许多公司和他们的产品。你现在需要知道的所有东西就是:云计算具有远大的前途,每个人都在追赶这一潮流。
云计算为什么重要
云计算为什么重要?无论是对开发者还是对最终用户,云技术都意味着很多东西。
对于开发人员来说,云计算提供了更多的存储和处理能力来运行他们开发的应用。云计算也带来了信息获取,数据处理和分析以及从世界上任何地方、任何地点连接人和资源的新方法。从根本上说,它消除了开发的局限,利用云计算,开发者再也不用忍受有限物理资源的约束。
对于最终用户来说,云计算提供的好处更多。一个使用网络应用的人再也不会被完全绑定到一台PC,一个地点或一个网络。无论他在何处,只要他想,他就能访问应用程序和文件。再也不必害怕计算机崩溃的时候丢失数据。无论用户的机器出现什么状况,放在云中的文件始终存在。其次还有利于群组协作。来自世界各地的用户能够实时的在相同的文件,应用和项目上进行协作。这是一个由云计算启动的全新的协同计算的世界。
云计算完成这一切的成本更低,因为与传统的网络计算相比,云能更有效地共享资源。使用云计算,硬件不必在物理上紧邻公司的办公室或数据中心。云基础设施可以位于任何地方,包括而且尤其是那些房地产和电力成本更低的地区。此外, IT部门不必关心高峰负荷能力,因为高峰负荷可分散到云里的外部设备中。而且,由于额外的云资源总是可用,企业不再需要购买设备用于不常见的计算密集任务。如果你需要更多的处理能力,云总能提供,而且价格更划算。
云计算和Web :独立发展?
如果你已经十分熟知云计算的概念,那么你大概也听说过一类乍听起来同云计算类似,但是称之为Web 的事物。事实上,云计算同Web 类似。从许多方面来讲,其中的一个是另外一个的子集。
究竟什么是Web ?在我看来,这是一个有点时髦的词,不同的人有不同的理解。蒂姆?奥莱理,所谓的Web 教父,将其定义为“网络作为平台,贯穿所有连接的设备”。其他有些人将Web 看作从信息孤岛(Web )到互联计算平台的一个转型,从用户的感觉来看,该平台如同本地可用的软件一样运行。还有其他一些人利用协作术语来定义Web ,因为所有的网站都从用户的行动中获得其价值。
Web 的这些定义听起来很像没有技术支撑的云计算。也就是说,云计算是通过其架构和基础设施(互联的计算机/服务器构成的作为一个整体运行的网格)来定义的,而Web 是通过使用者如何看待系统/使用系统提供的服务来定义的。换言之,云计算是关于计算机的,而Web 是关于人的。
或者,如蒂姆?奥莱理所说的那样:
云计算专指将因特网作为一个计算平台使用,而W
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!