2020-12-28

第二章 分布式计算范型

1、消息传递范型
一个进程发送代表请求的消息,该消息被传送到接受者;接受者处理该请求,并发送一条应答消息。随后,该应答可能触发下一个请求,并导致下一个应答消息。如此不断反复传递消息,实现两个进程间的数据交换.
基于该范型的开发工具有Socket应用程序接口(Socket API)和信息传递接口(Message Passing Interface,MPI)等

2、客户-服务器范型
该范型是网络应用中使用最多一种分布式计算范型,该模型将非对称角色分配给两个协作进程。其中,服务器进程扮演服务提供者角色,被动地等待请求的到达。另一个客户进程向服务器发起请求,并等待服务器响应。
该范型的典型应用是目前最流行的WWW。

3、P2P范型
在P2P范型中,各参与进程的地位是平等的,都具有相同的性能和责任(因此,称它们为peer)。每个参与者(进程)都可以向另一个参与者发起请求和接收响应。在一个基于P2P范型的分布式应用中,每一个参与的进程往往既承担的服务器进程的角色(资源提供者),又承担了客户进程的角色(资源请求者)。

4、消息系统范型
消息系统充当了一些相当独立的进程之间的中介。不同的进程以非耦合的方式,通过消息系统异步地交换消息。消息发送者(进程)在发送消息时,将一条消息放入消息系统中,后者接着将该消息转发到与各个接受者(进程)相应的消息接收队列中,一旦消息发送出去,发送者即可执行其他任务了。
消息系统模型可以进一步划分为两种子类型:

点对点消息模型(Point-to-point message model)
发布订阅消息模型(Public/Subscribe message model)
1
2
点对点消息模型: 在这种模型中,消息系统将来自发送者的一条消息转发到接收者的消息队列中。与基本的消息传递模型不同的是,这种中间件模型提供了消息暂存的功能,从而可以将消息的发送和接受分离。与基本的消息传递模型相比,点对点消息模型为实现异步消息操作提供了额外的一层抽象。如果要在基本的消息传递模型中达到同样的结果,就必须借助于线程或者子进程技术。
发布订阅消息模型: 在该模型中,每条消息都与某一主体或事件相关。对某个事件感兴趣的应用程序可以订阅与该事件相关的消息。当订阅者等待的时间发生时,触发该事件的进程将发布一条消息来宣布该事件或主题。中间件消息系统将这条消息分发给该消息的所有订阅者。发布/订阅消息模型提供了一种用于组播或组通信的强大抽象

5、远程过程调用(RPC)
RPC机制采用一种类似于本地过程调用的程序设计构造,以构建网络应用程序。这种机制为进程间通信和时间同步提供了一种方便的抽象,因此,RPC模型使得人们能够采用雷士与本机过程调用的编程方法,构建网络应用程序。

6、分布式对象范型
1)远程方法调用
是面向对象版本的RPC。在该范型中,进程可以调用对象方法,而该对象可驻留于某远程主机中。与RPC一样,参数可随方法调用传递,也可提供返回值。
2)对象请求代理

三个角色:对象请求者、对象提供者、对象请求代理
1
在对象请求代理范型中,进程向对象请求代理发出请求,对象请求代理将请求转发给能提供预期服务的适当对象。

7、网络服务范型
三个角色:服务请求者、服务提供者、目录服务
1
服务提供者将自身注册到网络上的目录服务器;当服务请求者(进程)需访问服务时,则在运行时与目录服务器联系;然后,如果请求的服务可用,则目录服务器将向目录服务进程提供一个有关该服务的引用;最后,进程利用该引用来与所需的服务进行交互。

8、移动代理范型
移动代理是一种可移动的程序或对象。它为可移动的程序或兑现提供了抽象,但这种范型不进行消息互换,而是当程序在各个节点移动时,携带并传递数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值