第二章、分布式计算范型
文章目录
- 第二章、分布式计算范型
-
-
-
-
- 消息传递范型
- 客户/服务范型
- P2P范型
- 消息系统范型
- 远程过程调用范型
- 分布式对象范型
- 络服务范型
- 移动代理范型
- 云服务范型
-
-
-
消息传递范型
软件消息传递(Message passing)是一种通信的形式,在并发计算、并行计算、面向对象编程与进程间通信中使用。在这种模式中,进程或对象以发送及接收消息的方式来达成同步,是进程间通信的基本途径.(注:远程过程调用范型也是属于消息传递范型中的一种).具体过程就是一种链式反应:A发送数据,B接收数据,B接收数据后有可能在触发下一个请求,A继续接收这条请求,如此反复.
客户/服务范型
这个范型没什么好说的,就是一台服务器为多台客户机提供服务,HTTP,FTP,DNS都属于这种范型.
P2P范型
点对点,每台计算机的角色是对等的,既可以充当服务器提供服务,又可以充当客户机使用享受服务器提供的服务,很多应用如即时消息传输,文件传输都会使用到这种范型,比特币也是这种范型的应用.
消息系统范型
消息系统范型基于消息传递范型,是指有专门的服务器提供各系统间消息的传递,让其他系统不在关心消息具体的发送细节,使得各系统间的耦合度更低,这类系统通常被成为消息中间件,如RabbitMQ,ActiveMQ等等,消息系统模型可以分为
-
点对点
在点对点范型中,消息系统其实只是起到了消息转发的功能.除此之外,还会有消息暂存功能.JMS就是这种范型的实现. -
发布/订阅
发布/订阅范型也是很常见的一种范型,与设计模式中的观察者模式有些类似,这种范型中生产者产生的消息可以被多个消息接收者所消费.
目前大部分的消息中间件同时支持这两种范型.
远程过程调用范型
远程过程调用(RPC),其实就是对底层的 络编程进行的进一步抽象,使得在程序员在编写程序调用其他主机的程序接口可以像调用普通程序接口一样简单.Dubbo就是和此范型的一个实现.
分布式对象范型
将面向对象应用到分布式系统中.
- 远程方法调用(rmi)
面向对象版本的RPC - 对象请求代理
由对象请求者,对象提供者和对象对象请求代理
与rmi类似,但是多了一个对象请求代理在作为中间件角色,也可以实现软件系统间的解耦.
络服务范型
有服务请求者,服务提供者,和目录服务组成,说到这里我突然想到了微服务中的服务治理,不就是 络服务范型的一个例子吗种提供服务的系统在统一的目录服务器上注册自己, 调用服务的程序不需要记住服务提供者的ip地址,只需要记住服务名,然后目录服务器会根据服务名在自身的数据库中寻找对应服务,目录服务器通过心跳来检测服务提供者是否在线,既方便了开发,也方便了后续的维护,如果服务器的ip改变,那么只需要在目录服务器重新注册一下即可.
移动代理范型
移动代理是一种可移动的程序或对象,好吧,不太了解,这是搜狗百科的词条解释:
移动代理系统由移动代理和移动代理服务设施(或称移动代理服务器)两部分组成。移动代理服务设施基于代理传输协议实现代理在主机间的转移,并为其分配执行环境和服务接口,代理在服务设施中执行,通过代理通信语言ACL相互通信并访问服务设施提供的服务。
云服务范型
- IasS(基础设施即服务)
提供云供应处理,存储, 络及其他基础性的计算资源,以供用户部署或运行自己的软件,包括操作系统或应用 - PasS(平台及服务)
用户可在云基础设施之上部署用户创建或采购应用,这些应用使用服务商支持的编程语言或工具开发. - SaaS(软件及服务)
用户可以使用服务上运行在云基础设施之上的应用.
文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树首页概览8697 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!