分布式计算
编辑分布式计算是研究分布式系统的计算机科学领域。甲分布式系统是一种系统,其组件位于不同的联网计算机上,该通信并通过协调它们的行动传递消息到彼此。这些组件相互交互以实现一个共同的目标。分布式系统的三个重要特征是:组件并发,缺少全局时钟以及组件独立故障。分布式系统的示例从基于SOA的系统到大型多人在线游戏不等以对等网络应用。
在分布式系统中运行的计算机程序称为分布式程序(分布式程序是编写此类程序的过程)。消息传递机制有许多不同类型的实现,包括纯HTTP,类似RPC的连接器和消息队列。
分布式计算还指使用分布式系统来解决计算问题。在分布式计算中,一个问题被分为许多任务,每个任务都由一台或多台计算机解决,这些计算机通过消息传递相互通信。
简介
用“分布式系统”、“分布式编程”和“ 分布式算法 ” 等术语表示的分布式词最初指的是计算机网络,其中各个计算机物理分布在某个地理区域内。如今,这些术语在更广泛的意义上使用,甚至是指运行在同一台物理计算机上并通过消息传递相互交互的自主进程。
尽管没有对分布式系统的单一定义,以下定义属性通常用作:
- 有几个自治计算实体(计算机或节点),每个实体都有其自己的本地内存。
- 实体通过消息传递相互通信。
分布式系统可能有一个共同的目标,例如解决大型计算问题。然后,用户将自治处理器的集合视为一个单元。或者,每台计算机可以有自己的用户,并具有各自的需求,而分布式系统的目的是协调共享资源的使用或向用户提供通信服务。
分布式系统的其他典型属性包括:
- 该系统必须容忍单个计算机中的故障。
- 系统的结构(网络拓扑、网络等待时间、计算机数量)事先未知,系统可能由不同种类的计算机和网络链接组成,并且系统可能会在执行分布式程序时发生变化。
- 每台计算机仅具有有限的,不完整的系统视图。每台计算机可能只知道输入的一部分。
并行和分布式计算
编辑分布式系统是一组网络计算机,它们共享一个共同的工作目标。术语“ 并行计算 ”、“ 并行计算 ”和“分布式计算”有很多重叠,并且它们之间没有明显的区别。同一系统的特征可能是“并行”和“分布式”。典型分布式系统中的处理器并行并行运行。并行计算可以看作是分布式计算的一种特定的紧密耦合形式和分布式计算可以看作是并行计算的一种松散耦合的形式。但是,可以使用以下标准将并发系统大致分为“并行”或“分布式”:
- 在并行计算中,所有处理器都可以访问共享内存以在处理器之间交换信息。
- 在分布式计算中,每个处理器都有自己的专用内存(分布式内存)。通过在处理器之间传递消息来交换信息。
由于术语并行和分布式算法的传统用法与上述并行和分布式系统的定义不完全匹配,因此情况变得更加复杂。但是,根据经验,共享内存多处理器中的高性能并行计算使用并行算法,而大型分布式系统的协调则使用分布式算法。
结构
编辑各种硬件和软件体系结构用于分布式计算。在较低的层次上,有必要将多个CPU与某种类型的网络互连,而不管该网络是印刷在电路板上还是由松散耦合的设备和电缆组成。在更高级别,有必要将那些CPU上运行的进程与某种通信系统互连。
分布式编程通常属于以下几种基本架构之一:客户端服务器、三层、n层或对等;或类别:松耦合或紧耦合。
- 客户端服务器:智能客户端与服务器联系以获取数据,然后格式化并将其显示给用户的体系结构。当客户端的输入代表xxx性更改时,会将其提交回服务器。
- 三层:将客户端智能移至中间层的体系结构,以便可以使用无状态客户端。这简化了应用程序部署。大多数Web应用程序是三层的。
- n层:通常指Web应用程序的体系结构,这些体系结构将其请求进一步转发到其他企业服务。这种类型的应用程序是导致应用程序服务器成功的最主要因素。
- 对等:没有专用机器提供服务或管理网络资源的体系结构。而是将所有职责统一分配在所有称为对等机器的机器之间。对等体既可以充当客户端,也可以充当服务器。该体系结构的示例包括BitTorrent和比特币网络。
分布式计算体系结构的另一个基本方面是在并发进程之间通信和协调工作的方法。通过各种消息传递协议,进程通常可以以主/从关系直接相互通信。备选地,“以数据库为中心”的体系结构可以通过利用共享数据库而无需任何形式的直接进程间通信就可以完成分布式计算。以数据库为中心的体系结构特别是在示意性体系结构中提供了关系处理分析,从而可以进行实时环境中继。这样就可以在网络数据库的参数之内和之外实现分布式计算功能。
应用
编辑使用分布式系统和分布式计算的原因可能包括:
- 应用程序的本质可能需要使用连接多台计算机的通信网络:例如,在一个物理位置生成的数据在另一位置需要。
- 在许多情况下,原则上可以使用一台计算机,但是出于实际原因,使用分布式系统是有益的。例如,与一台高端计算机相比,通过使用几台低端计算机的集群来获得所需的性能水平可能更具成本效益。分布式系统比非分布式系统可提供更高的可靠性,因为没有单点故障。而且,分布式系统可能比单片单处理器系统更易于扩展和管理。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/109688/