购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.2 云计算是集大成者

在计算机科学技术发展的历史上,经常出现一些里程碑式的技术。这些技术产生的时间或远或近,对当今世界的IT运用和服务模式产生了巨大的影响。这些技术包括并行计算、网格计算、效用计算、虚拟化技术和SaaS 等 [9] 。云计算不是一蹴而就的,而是从这些技术中逐渐演进而来的,既一脉相承,又有所不同(图1-3)。业界普遍认为云计算是各种先进计算和服务技术的集大成者。

图1-3 云计算演进过程

1.2.1 并行计算

并行计算(Parallel Computing)将一个科学计算问题分解为多个小的计算任务,并将这些小任务在并行计算机上同时执行,利用并行处理的方式达到快速解决复杂运算问题的目的。并行计算一般应用于诸如军事、能源勘探、生物、医疗等对计算性能要求极高的领域,因此也被称为高性能计算(High Performance Computing)或超级计算(Super Computing)。并行计算机是一群同构处理单元的集合,这些处理单元通过通信和协作来更快地解决大规模计算问题。常见的并行计算机系统结构包括共享存储的对称多处理器(SMP)、分布式存储的大规模并行机(MPP)和松散耦合的分布式工作站集群(COW)等。解决计算问题的并行程序往往需要特殊的算法,编写并行程序需要考虑很多问题之外的因素,如各个并发执行的进程之间如何协调运行、任务如何分配到各个进程上运行等。

并行计算机可以说是云环境的重要组成部分。与云计算的思想相似,目前世界各国已经集中建立了若干超级计算中心来服务于该区域内有并行计算需求的用户,并采用分担成本的方式进行付费。但是,云计算与传统意义上的并行计算相比,又存在明显的区别。首先,并行计算需要采用特定的编程范例来执行单个大型计算任务或者运行某些特定应用;而云计算需要考虑的是如何为数以千万计的不同种类应用提供高质量的服务环境,以及如何提高这个环境对用户需求的响应,从而加速业务创新。一般来说,云计算对用户的编程模型和应用类型等没有特殊限定,用户不再需要开发复杂的程序,就可以把他们的各类企业和个人应用迁移到云计算环境中。其次,云计算更加强调用户通过互联网使用云服务,在云中利用虚拟化进行大规模的系统资源抽象和管理。在并行计算中,计算资源往往集中在单个数据中心的若干台计算机或者集群上。云计算中资源的分布更加广泛,正如前文所述,它已经不再局限于某个数据中心,而是扩展到了多个不同的地理位置。同时,由于采用了虚拟化技术,云计算中的资源利用率可以得到有效的提升。由此可见,云计算是互联网技术和信息产业蓬勃发展背景下的产物,完成了从传统的、面向任务的单一计算模式向现代的、面向服务的多元计算模式的转变。

1.2.2 网格计算

网格计算(Grid Computing)是一种分布式计算模式。网格计算技术将分布在不同地理区域和不同管理区域里的服务器、存储系统和网络连接在一起,形成一个整合系统,为用户提供功能强大的计算及存储能力来处理特定的任务。对于使用网格的最终用户或应用程序来说,网格看起来就像一个拥有超强能力的虚拟计算机。网格计算的本质在于以高效的方式来管理各种加入了该分布式系统的异构耦合资源,并通过任务调度来协调这些资源合作完成一项特定的计算任务。

可见,网格计算着重于管理通过网络连接起来的异构资源,并保证这些资源能够充分为计算任务服务。通常,用户需要基于某个网格的框架来构建自己的网格系统,并对其进行管理,在其上执行计算任务。云计算则不同,用户只需要使用云中的资源,而不需要关注系统资源的管理和整合。这一切都将由云提供者进行处理,用户看到的是一个逻辑上单一的整体。因此,它们在资源的所属关系上存在着较大差异,也可以说在网格计算中是多个零散资源为单个任务提供运行环境,而在云计算中是单个整合资源为多个用户提供服务。文献[2]对两者进行了更加深入详细的对比。

1.2.3 效用计算

效用计算(Utility Computing)强调的是IT资源,如计算和存储等,能够根据用户的要求按需提供,而且用户只需要按照其实际使用情况付费。效用计算的目标是IT资源能够像传统公共设施(如水和电等)一样供应和收费。效用计算使得企业和个人不再需要一次性的巨额投入就可以拥有计算资源,而且能够降低使用和管理这些资源的成本。效用计算追求的是提高资源的有效利用率,最大限度地降低资源的使用成本和提高资源使用的灵活性。

效用计算所提倡的资源按需供应、用户按使用量付费的理念与云计算中的资源使用理念相符。云计算也可以按照用户的资源需求分配运算、存储、网络等各种基础资源。比效用计算更进一步的是,云计算已经有了很多实际应用案例,所涉及的技术和架构可行性更强。云计算所关注的是如何在互联网时代以其自身为平台开发、运行和管理不同的服务。云计算不但注重基础资源的提供,而且注重服务的提供。在云计算环境中,不但硬件等IT基础资源能够以服务的形式来提供,应用的开发、运行和管理也是以服务的形式提供的,应用本身也可以采用服务的形式来提供。因此,云计算与效用计算相比,技术和理念所涵盖的范围更广泛、可行。

1.2.4 普适计算

1988年,Mark Weiser提出了普适计算的思想,并预测计算模式会发展为普适计算。20世纪90年代末(另一说法为1991年),普适计算这一概念得到广泛关注,逐渐升温。1999年,IBM正式提出普适计算的概念。同年,第一届Ubicomp国际会议召开。2000年,第一届Pervasive Computing国际会议召开。2002年,IEEE Pervasive Computing期刊创刊。

普适计算的促进者希望嵌入环境或日常工具中的计算能够使人更自然地和计算机交互。而普适计算的显著目标之一则是使计算机设备可以感知周围的环境变化,从而根据环境的变化做出自动的基于用户需要或者设定的行为。

普适计算技术运用了无线电网络技术,可以让人们在不受时空限制的环境下享用资讯。它与一般的行动计算(Mobile Computing)的不同在于具有情境感知(Context Aware)的特性。普适计算技术可以通过感应个人所在的位置、所处的环境资讯、个人的情形及任务来提供最有效能的使用环境。

1.2.5 SaaS

SaaS(Software as a Service)的意思是软件即服务,又称软件运营。SaaS是基于互联网提供软件服务的软件应用模式。作为一种在21世纪开始兴起的创新的软件应用模式,SaaS是软件科技发展的最新趋势。SaaS 是一种软件布局模型,其应用专为网络交互而设计,便于用户通过互联网托管、部署及接入。SaaS 应用软件的价格通常为“全包”费用,囊括了通常的应用软件许可证费、软件维护费及技术支持费,将其统一为每个用户的月度租用费。对于广大中小型企业来说,SaaS是采用先进技术实施信息化的最好途径。但SaaS绝不仅仅适用于中小型企业,所有规模的企业都可以从SaaS中获利。

2008 年前,IDC 将SaaS 分为两大组成类别:托管应用管理(Hosted AM)——以前称为应用服务提供(ASP),以及“按需定制软件”——SaaS的同义词。从2009年起,托管应用管理已成为 IDC 应用外包计划的一部分,而按需定制软件与 SaaS 被视为相同的交互模式对待。

目前,SaaS已成为软件产业的一个重要力量。只要SaaS的品质和可信度能继续得到证实,它的魅力就不会消退。

1.2.6 虚拟化技术

虚拟化(Virtualization)是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以用单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。

虚拟化技术最早出现在 20 世纪 60 年代的 IBM 大型机系统中,在20世纪70年代的 System 370 系列中逐渐流行起来,这些计算机通过一种叫虚拟机监控器(Virtual Machine Monitor,VMM)的程序在物理硬件之上生成许多可以运行独立操作系统软件的虚拟机(Virtual Machine)实例。随着近年多核系统、集群、网格甚至云计算的广泛部署,虚拟化技术在商业应用上的优势日益体现,不仅降低了 IT 成本,而且增强了系统安全性和可靠性,虚拟化的概念也逐渐深入人们日常的工作与生活中。

虚拟化是一个广义的术语,对于不同的人来说可能意味着不同的东西,这要取决他们所处的环境。在计算机科学领域中,虚拟化代表着对计算资源的抽象,而不仅仅局限于虚拟机的概念。例如,对物理内存的抽象,产生了虚拟内存技术,使得应用程序认为其自身拥有连续可用的地址空间(Address Space);而实际上,应用程序的代码和数据可能被分割成多个碎片页或段,甚至被交换到磁盘、闪存等外部存储器上,即使物理内存不足,应用程序也能顺利执行。

虚拟化技术与多任务及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时运行;而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者虚拟主机上;而超线程技术只是用单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。 kRWrCTldePxzQkf/LffNiDV7PGqhysTmlRLeYB686UdvaSREb83Aez5Ys5UG599I

点击中间区域
呼出菜单
上一章
目录
下一章
×