关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 对典型分布式计算技术的分析和比较

对典型分布式计算技术的分析和比较

作者:时间:2012-08-17来源:网络收藏

1 概述

本文引用地址:http://www.eepw.com.cn/article/202226.htm

不同的人对于计算的理解是不同的,我们可以用不同的方式定义计算的具体含义。其中一种较为普遍的定义就是,计算就是利用网络把成千上万台计算机连接起来,组成一台虚拟的超级计算机,并利用它们的空闲时间和存储空间来完成单台计算机无法完成的超大规模计算事务的求解。分布式计算的最早形态出现在80年代末的Intel公司。随着Internet的迅速发展和普及,分布式计算的研究在90年代后达到了高潮。Internet技术实现了计算机硬件的连通,Web则实现了网页的连通,而分布式的目标就是实现Internet上所有资源的全面连通。它要把整个Internet整合成一台巨大的超级计算机,实现计算资源、通信资源、软件资源、信息资源、知识资源的全面共享,为现代信息技术开创一个新的纪元。

分布式计算研究主要集中在分布式操作系统和分布式计算环境研究两个方面。但随着Internet技术的飞速发展, 分布式计算的研究热点也从以分布式操作系统为中心的传统模式转换到以网络计算平台为中心的实用分布式技术, 并取得了较大的成功。此外,在过去的20 多年间也涌现出了大量的分布式,如中间件技术、网格技术、移动Agent技术、P2P技术以及最近推出的Web Service技术,它们在特定的范围内都得到了广泛的应用。但是,现有的分布式都存在着一些没有解决的问题,从而也影响了分布式计算技术的使用和普及。本文力争通过介绍分布式计算技术的工作原理,以及对几种的分布式计算技术的分析和,来发现它们共同面临的一些问题。除此之外,还简要介绍了一下存储整合对解决分布式计算中出现的一些问题所起到的作用。最后对分布式计算技术的发展方向进行了探讨。

下面就让我们来看一下分布式计算技术的工作原理。

2 分布式计算技术的工作原理

要想实现分布式计算,首先就要满足三方面的条件:

第一、计算机之间需要能彼此通信;

第二、需要有实施的“交通”规则(例如,决定谁第一个通过,第二个做什么,如果某事件失败会发生什么情况等);

第三、计算机之间需要能够彼此寻找。

只有满足了这三点,分布式计算才有可能实现。

目前,一个分布式网络体系结构包括了安装了超轻量软件代理客户端系统,以及一台或多台专用分布计算管理服务器。此外,还会不断有新的客户端申请加入分布式计算的行列。当代理程序探测到客户端的CPU处于空闲时,就会通知管理服务器此客户端可以加入运算行列,然后就会请求发送应用程序包。客户端接收到服务器发送的应用程序包之后,就会在机器的空闲时间里运行该程序,并且将结果返回给管理服务器。应用程序会以屏保程序,或者直接在后台运行的方式执行,不会影响用户的正常操作。当客户端需要运行本地应用程序的时候,CPU的控制权会立即返回给本地用户,而分布式计算的应用程序也会中止运行。

3 几种分布式计算技术 3.1 中间件技术

中间件是基础软件,是分布式系统中介于应用层和网络层的一个功能层次,它能够屏蔽操作系统(或网络协议)的差异,实现分布式异构系统之间的互操作。分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。它扩展了C/S结构,形成了一个包括客户端、中间件和服务器的多层结构。基于中间件分布式系统的体系结构如图1所示。

基于中间件的分布式计算技术以中间件为桥梁,通过把数据转移到计算之处的计算方式,把网络系统的所有组件集成为一个连贯的可操作的异构系统,从而达到网络“透明”的目的。

早期的中间件简单,仅具有消息通讯和事务管理功能。但随着需求的多样化,也产生了许多不同类别的中间件产品,如:消息中间件(MOM :Message-Oriented Middleware)、数据库中间件(Database Middleware)、远程过程调用中间件(RPC :Remote Process Call)、对象请求代理中间件(ORB :Object Request Broker)和事务处理中间件(TP Monitor:Transaction Process Monitor)。

图1 中间件技术

3.2 网格技术

网格计算是通过Internet把分散在各处的硬件、软件、信息资源连结成为一个巨大的整体,从而使得人们能够利用地理上分散于各处的资源,完成各种大规模的、复杂的计算和数据处理的任务。网格计算建立的是一种新型的Internet基础支撑结构,目标是将与Internet互联的计算机设施社会化。网格计算的发展非常迅速,数据网格、服务网格、计算网格等各种网格系统在全球范围内得到广泛的研究和实施。网格计算无疑是分布式计算技术通向计算时代的一个非常重要的里程碑。

网格的体系结构是有效进行网格计算的重要基础,到目前为止重要的网格体系结构有两个: 一个是以Globus项目为代表的五层沙漏结构,它是一个以协议为中心的框架;另一个是与Web服务相融合的开放网格服务结构OGSA(Open Grid Services Architecture),它与Web 服务一样都是以服务为中心。但是,所有的网格系统都有这样一个基本的、公共的体系结构:资源层、中间件层和应用层。

(1)网格资源层:它是构成网格系统的硬件基础。包括Internet各种计算资源,这些计算资源通过网络设备连接起来。

(2)网格中间件层:它是一系列工具和协议软件。其功能是屏蔽资源层中计算资源的分布、异构特性,向网格应用层提供透明、一致的使用接口。

(3)网格应用层:它是用户需求的具体体现。在网格操作系统的支持下,提供系统能接受的语言、Web 服务接口、二次开发环境和工具,并可配置支持工程应用、数据库访问的软件等。

3.3 移动Agent技术

目前还没有一个关于移动Agent的确切定义,我们一般认为移动Agent是一类能在自己控制之下从一台计算机移动到另一台计算机的自治程序,它们能为分布式应用提供方便的、高效的执行框架。

移动Agent是一类特殊的软件Agent,可以看成是软件Agent技术与分布式计算技术相结合的产物,它除了具有软件Agent的基本特性——自治性、响应性、主动性和推理性外,还具有移动性,即它可以在网络上从一台主机自主地移动到另一台主机,代表用户完成指定的任务。由于移动Agent可以在异构的软、硬件网络环境中自由移动,因此这种新的计算模式能有效地降低分布式计算中的网络负载、提高通信效率、动态适应变化的网络环境,并具有很好的安全性和容错能力。但目前,所有的移动Agent系统还都很不成熟,存在着各种各样的缺陷。所以,我们可以把目前的众多Agent系统看成是实验室系统,它们离真正实用的产品还有很大的距离。

p2p机相关文章:p2p原理



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭