分布式计算范型

分布式计算范型

Hello各位old铁,我是酷酷的小张,以下是今日解说!
关于分布式计算之前的文章介已经绍过了,本文就来讲一讲分布式计算范型。
当下主流的分布式计算范型包括消息传递、客户/服务器、P2P、消息系统、远程过程调用、分布式对象、网络服务、移动代理和云服务。
消息传递范型
在这里插入图片描述消息传递是进程间通信的基本途径,在消息传递范型中,表示消息的数据在两个进程(进程A与进程B)间交换,一个是发送者,另一个是接收者。消息传递同样也是分布式应用的最基本范型,一个进程发送代表请求的消息,该消息被传送到接收者;接收者处理该请求消,并发送一条应答消息。最后该应答消息可能触发下一个请求,并引起下一个应答消息。如此不断反复传递消息,实现两个进程间的数据交换。
客户/服务器范型
在这里插入图片描述客户/服务器范型(简称C/S范型)是网络应用中使用最多的一种分布式计算范型,其中服务器进程扮演服务提供者角色,被动地等待请求的到达;客户进程向服务器发起请求,并等待服务器响应。双方角色为非对称角色,服务器进程监听和接受请求,客户进程发送请求和接收响应,同时进程间的事件也被简化。
当前最流行的互联网应用WWW就是基于客户/服务器范型的一个典型分布式应用。
P2P范型
在这里插入图片描述
P2P范型源于P2P网络(又称为对等计算网络),P2P是无中心服务器,依赖用户群交换的互联网体系。与客户/服务器结构的系统不同,在P2P网络中,每个用户既是一个结点,又有服务器的功能,任何一个结点无法直接找到其他结点,必须依靠其用户群进行信息交流。
在P2P范型中,各参与进程的地位是平等的,具有相同的性能和责任,每个参与者都可以向另一个参与者发起请求和接收响应,每一个参与的进程往往既承担服务器进程的角色(资源提供者),又承担客户进程的角色(资源请求者)。
P2P的应用系统实例—Napster。Napster是第一个被广泛应用的点对点(Peer-to-Peer,P2P)音乐共享服务,它极大地影响了人们,特别是大学生使用互联网的方式。它的出现,使音乐爱好者间共享MP3音乐变得容易,却也因此招致音像界对其大规模侵权行为的泛滥。尽管在法庭的责令下该服务已经终止,它却给点对点文件共享程序——如Kazaa,Limewire和BearShare——的拓展铺好了路,对这种方式的文件共享的控制,亦变得愈加困难。如今Napster靠付费服务生存着,免费的Napster的流行和回响使之在电脑界和娱乐业里成为一个传奇的符号。
消息系统范型
在这里插入图片描述
消息系统范型实在基本的消息传递范型的基础上扩展而来的,在这种范型中,消息系统充当一些相对独立的进程之间的中介。不同的进程以非耦合的方式通过消息系统异步地交换消息。消息发送者在发送消息时,将一条消息放入消息系统中,后者接着将该消息转发到与各个接收者相应的消息接收队列中,一旦消息发送出去,发送者即可执行其他任务。
消息系统范型可以进一步划分为两种子类型:点对点消息范型(point-to-point message model)和发布/订阅消息范型(public/subscribe
message model).
远程过程调用范型
在这里插入图片描述对于基本的网络协议和基本的网络应用程序来说,消息传递范型是适用的。但是随着应用程序变得越来越复杂,需要为网络编程提供进一步的抽象。远程过程调用(Remote Procedure Call, RPC)范型就提供了这种抽象。
远程过程调用涉及两个独立的进程,它们可以分别位于两台独立的计算机上。如果进程A希望向另一个进程B发出请求,就可以向进程B发出一个过程调用,同时传递的还有一种参数值,过程执行完毕后,进程B将返回一个值给进程A。
分布式对象范型
分布式对象范型将面向对象引用到分布式系统中,是面向对象软件开发技术的自然扩展。该范型使应用程序可访问分布于网络上的各个对象。
远程方法调用
在这里插入图片描述
远程方法调用是面向对象版本的RPC,在该范型中,进程可以调用对象方法,而该对象可驻留于某远程主机中,与RPC一样,参数可随方法调用传递,也可提供返回值。
对象请求代理
在这里插入图片描述
对象请求代理范型由对象请求者、对象提供者和对象请求代理组成。在对象请求代理范型中,进程向对象请求代理发出发出请求,对象请求代理将请求转发给能提供预期服务的适当对象。
网络服务范型
在这里插入图片描述
网络服务范型由服务请求者、服务提供者(对象)和目录服务三者组成。本质上是对远程方法调用范型的扩展。
网络服务范型的工作原理为:服务提供者将自身注册到网络上的目录服务器上;当服务请求者(进程)需访问服务时,则在运行时与目录服务器联系;如果请求的服务可用,则目录服务器将向目录服务进程提供一个有关该服务的引用;最后,进程利用该引用来与所需的服务进行交互。
移动代理范型
在这里插入图片描述
移动代理是一种可移动的程序或对象,在移动代理范型中,一个代理从源主机出发,然后根据其自身携带的执行路线,自动地在网上主机间移动。在每一主机上,代理访问所需的资源或服务,并执行必要的任务来完成其使命。
移动代理范型为可移动的程序或对象提供了抽象。
云服务范型
美国国家标准与技术研究院(NIST)定义了云计算的三种服务模型:基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)。
1.设施即服务
云供应处理、存储、网络以及其他基础性的计算资源,以供用户部署或运行自己的软件,包括操作系统或应用。用户并不管理或控制底层的云基础设施,但是拥有对操作系统、存储和部署的应用的控制,以及一些网络组件的有限控制。
2.即服务
用户可在云基础设施之上部署用户创建或采购的应用,这些应用使用服务商支持的编程语言或开发工具,用户并不管理或控制底层的云基础设施,包括网络、服务器、操作系统或存储等,但是可以控制部署的应用,以及应用主机的某个环境配置。
3.即服务
用户可使用服务商运行在云基础设施之上的应用。用户使用各种客户端设备通过“瘦”客户界面(例如浏览器)等来访问应用(例如基于浏览器的邮件)。用户并不管理或控制底层的云基础设施,例如网络、服务器、操作系统、存储甚至其中的单个应用,除了某些有限用户的特殊应用配置项。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值