分布式系统原理与规范 笔记
2014-01-22 00:00
113 查看
传统的集中式系统:单处理器系统,由单个计算机及其外围设备构成,也可以包括一些远程终端。
大量计算机通过高速网络连接 成为计算机网络或者分布式系统。
描述:若干计算机的集合。
分布式目标:
1、让用户方便地与资源链接
2、隐藏在网络上分布(透明性)
访问、位置、迁移、重定位、复制、并发、故障、持久性
3、开放
4、可扩展
接口通过IDL定义,记录服务的语法。实际通过非正式方式给出。
策略与机制分离。
扩展性:1.规模上扩展;
分布式app直接使用套接字通信。
商业环境中,使用多层分布体系:纵向分布:逻辑上不同的组件放在不同的机器上。
客户和服务器可以在物理上分割成几个部分,它们在逻辑上拥有同等地位,但每个部分都处理自己拥有的完整的数据集,从而达到负载平衡。
通信模型:
1.RPC
2.远程方法调用
3.面向消息的中间件
4.stream
物理层:负责对信号的传输
数据链路层:实际的通信网络会发生错误,本层采取某种机制检测并纠正这种错粗。 校验。
远程过程调用: 允许程序调用位于其他机器的进程。当机器A上的进程调用机器B上的进程时,A上的调用进程被挂起,B上的进程开始执行,
调用方使用参数将信息传送给调用方,通过传回的结果得到信息。
希望RPC是透明的。
RPC方式:
1、门
2、异步RPC(RPC)
DCE 分布式计算环境
现有操作系统与分布式应用程序之间的中间抽象来执行。 中间件系统。
由 分布式文件服务,目录服务,分布式时间服务(DTS)
RPC系统自动找到恰当的服务器,在客户端和服务器建立通信。
接口定义 和 唯一标识符。
客户绑定到服务器,服务器上都有DCE守护进程维护一张 服务器,断点 列表。
对象的关键特点是对数据的封装,封装的数据称为状态,操作成为方法。
将接口和实现这些接口的对象分离 。 接口在一台机器上,对象本身驻留在另一台机器上。 分布式对象。
当一个client绑定到一个分布式对象的时候,该对象接口的一种实现:代理proxy 被加载到客户的地址空间。
代理唯一的工作时对方法的调用编组成消息,并对 应答消息进行编解码,将调用的结果返回给客户。
实际对象驻留在服务器所在机器上,它向服务器提供的接口与客户端接口相同。
对象适配器 让该object adapter。
接口的实现可研在适配器中注册,随后适配器可以使该接口可供远程调用。
对象分为:语言对象和运行时对象
持久性对象和暂时对象。
持久对象始终存在,不依赖于当前服务器。
创建进程时,分配一个独立的地址空间。
空间分配意味着 对内存段进行初始化,数据段清零,有关程序复制到文本段,为临时数据建立堆栈。
进程之间切换 CPU切换(寄存器,程序计数器,堆栈指针),os要修改MMU的寄存器,位于转换后备缓冲器(TLB)的地址
转换缓冲内容标记为无效。如果同时运行进程数目超过主存
容纳能力,切换进程前必须在主存和磁盘之间进行切换。
unix IPC:管道、消息队列、共享内存段
IPC禁止的主要缺陷: 通信需要开销庞大的上下文切换。
因为IPC需要内核干预才能进行。
线程切换可以在用户空间完成。 而进程切换需要在内核空间完成。
服务器处理 客户端突然要求中断通信,如 下载中断。 考虑 带外数据的支持。
服务器是否是stateless的。
状态无关:不保存客户的状态信息,也不降自身的状态变化告知任何客户。
stateful server保存客户端信息,并对其进行维护。(复杂性:恢复机制)
对象服务器 支持分布式对象而设计的对象。
对象服务器本身并不真正提供特定服务,服务由驻留在服务器中的对象实现。 也就是只提供根据远程客户的请求来调用本地对象的手段。
大量计算机通过高速网络连接 成为计算机网络或者分布式系统。
描述:若干计算机的集合。
分布式目标:
1、让用户方便地与资源链接
2、隐藏在网络上分布(透明性)
访问、位置、迁移、重定位、复制、并发、故障、持久性
3、开放
4、可扩展
接口通过IDL定义,记录服务的语法。实际通过非正式方式给出。
策略与机制分离。
扩展性:1.规模上扩展;
分布式app直接使用套接字通信。
商业环境中,使用多层分布体系:纵向分布:逻辑上不同的组件放在不同的机器上。
客户和服务器可以在物理上分割成几个部分,它们在逻辑上拥有同等地位,但每个部分都处理自己拥有的完整的数据集,从而达到负载平衡。
通信模型:
1.RPC
2.远程方法调用
3.面向消息的中间件
4.stream
物理层:负责对信号的传输
数据链路层:实际的通信网络会发生错误,本层采取某种机制检测并纠正这种错粗。 校验。
远程过程调用: 允许程序调用位于其他机器的进程。当机器A上的进程调用机器B上的进程时,A上的调用进程被挂起,B上的进程开始执行,
调用方使用参数将信息传送给调用方,通过传回的结果得到信息。
希望RPC是透明的。
RPC方式:
1、门
2、异步RPC(RPC)
DCE 分布式计算环境
现有操作系统与分布式应用程序之间的中间抽象来执行。 中间件系统。
由 分布式文件服务,目录服务,分布式时间服务(DTS)
RPC系统自动找到恰当的服务器,在客户端和服务器建立通信。
接口定义 和 唯一标识符。
客户绑定到服务器,服务器上都有DCE守护进程维护一张 服务器,断点 列表。
对象的关键特点是对数据的封装,封装的数据称为状态,操作成为方法。
将接口和实现这些接口的对象分离 。 接口在一台机器上,对象本身驻留在另一台机器上。 分布式对象。
当一个client绑定到一个分布式对象的时候,该对象接口的一种实现:代理proxy 被加载到客户的地址空间。
代理唯一的工作时对方法的调用编组成消息,并对 应答消息进行编解码,将调用的结果返回给客户。
实际对象驻留在服务器所在机器上,它向服务器提供的接口与客户端接口相同。
对象适配器 让该object adapter。
接口的实现可研在适配器中注册,随后适配器可以使该接口可供远程调用。
对象分为:语言对象和运行时对象
持久性对象和暂时对象。
持久对象始终存在,不依赖于当前服务器。
创建进程时,分配一个独立的地址空间。
空间分配意味着 对内存段进行初始化,数据段清零,有关程序复制到文本段,为临时数据建立堆栈。
进程之间切换 CPU切换(寄存器,程序计数器,堆栈指针),os要修改MMU的寄存器,位于转换后备缓冲器(TLB)的地址
转换缓冲内容标记为无效。如果同时运行进程数目超过主存
容纳能力,切换进程前必须在主存和磁盘之间进行切换。
unix IPC:管道、消息队列、共享内存段
IPC禁止的主要缺陷: 通信需要开销庞大的上下文切换。
因为IPC需要内核干预才能进行。
线程切换可以在用户空间完成。 而进程切换需要在内核空间完成。
服务器处理 客户端突然要求中断通信,如 下载中断。 考虑 带外数据的支持。
服务器是否是stateless的。
状态无关:不保存客户的状态信息,也不降自身的状态变化告知任何客户。
stateful server保存客户端信息,并对其进行维护。(复杂性:恢复机制)
对象服务器 支持分布式对象而设计的对象。
对象服务器本身并不真正提供特定服务,服务由驻留在服务器中的对象实现。 也就是只提供根据远程客户的请求来调用本地对象的手段。
相关文章推荐
- 分布式系统原理与规范 笔记2
- 分布式系统原理与范性 笔记
- 操作系统精髓与设计原理学习笔记十:分布式处理、客户/服务器和集群系统
- 面对软件错误构建可靠的分布式系统_笔记14
- 分布式系统阅读笔记(一)-----分布式系统的特征
- 分布式开放消息系统(RocketMQ)的原理与实践
- 分布式系统设计原理与方案
- 分布式系统阅读笔记(二十一)-----分布式系统设计(Google Case Study)
- 分布式开放消息系统(RocketMQ)的原理与实践
- 分布式监控系统Zabbix3.4-针对MongoDB性能监控操作笔记
- 分布式开放消息系统(RocketMQ)的原理与实践
- 设计全局ER模型 数据库系统原理(2007版) 课程代码4735 笔记
- 分布式高性能消息系统(Kafka MQ)的原理与实践
- 分布式文件系统:原理、问题与方法
- 操作系统学习笔记:分布式系统结构
- 学习笔记1:《大型网站技术架构 核心原理与案例分析》之 大型网站软件系统的特点
- 分布式开放消息系统(RocketMQ)的原理与实践
- 分布计算环境学习笔记2——分布式系统中的面向对象技术
- CommonJS模块规范与NodeJS的模块系统底层原理
- 计算机组成原理复习之存储器和指令系统笔记