分布式系统 复习2015
分布式系统及云计算复习资料
1.分布式计算是一种把需要进行大量计算的工程数据分割成小块,由多台计算机分别计算,在上传运算结果够,将结果统一合并得出数据结论的科学。
2.分布式系统的关键目标:用户可以方便的访问资源;对用户隐藏资源再多台计算机上分布的情况;分布式系统是开放的;分布式系统是可扩展的3.资源可访问性:是用户可以方便的访问远程资源,并且以一种受控的方式与其他用户共享这些资源。
4.透明性;指分布系统是一个整体,而不是独立的组件的组合,系统对用户和应用程序屏蔽其组件的分离性。
5.云计算:由一系列可以动态升级和被虚拟化的资源组成,这些资源被所有云计算的用户所共享并且可以方便的通过网络访问,用户无需掌握与计算技术,只需要按照个人或者团体的需要租赁与计算的资源。
6.云计算的优缺点;优点(1.数据的可移性2.轻松维护个人应用程序和个人文件 3.对计算机的要求低4.给多人协作带来了机会5.资源整合使用率高6.节电省能,降低成本)缺点(1.对网络的高依赖性2.数据的安全问题3.数据的存活能力7.集群运算与网格运算的区别:1在集群中,资源位于单个的管理区中由单个实体进行管理;而在网格系统中,资源分布在不同的管理区。
每个管理区都有其策略和目标2应用程序的调度安排,集群系统中的调度器着眼于提高整个系统性能;而在网格系统中调度器被称为资源代理着眼于提升特定应用的表现来满足终端用户的服务质量需求。
8.分布式系统:是一组自治的计算机集合,通过通信网络和相互链接,实现资源共享和协同工作,而呈现给用户的是单个完整的计算机系统。
9.分布式与集中式区别:1.分布式各组件和进程行为是物理并发的,没有统一时钟,而集中式系统的时间是明确的,同步机制实行起来相对容易 2.分布式系统各组件必须实现可靠安全的相互作用,当一部分出现故障时,系统大部分工作仍可进行。
而集中式系统出现鼓掌则不能继续工作 3.分布式系统的异构性。
4与集中式系统相比,分布式系统响应时间较短。
分布式系统基础考试
分布式系统基础考试(答案见尾页)一、选择题1. 分布式系统的定义是什么?A. 由多个计算机组成的系统,这些计算机通过网络进行通信和协调B. 一个提供分布式服务的计算机系统C. 一种软件技术,使得应用程序可以跨多个硬件和操作系统运行D. 一种允许多个用户同时访问和操作的系统2. 分布式系统中的“分布式”一词的含义是什么?A. 多个系统独立运行B. 数据存储在多个位置C. 系统具有高可用性和容错性D. 所有节点都可以独立完成任务3. 分布式系统的核心特性是什么?A. 并发性B. 透明性C. 可伸缩性D. 容错性4. 分布式系统中的节点可以是哪种类型?A. 服务器B. 桌面电脑C. 移动设备D. 所有这些都可能5. 分布式系统中的通信协议有哪些?A. HTTPB. TCP/IPC. UDPD. 所有这些都可能6. 分布式系统中的数据一致性是指什么?A. 所有节点上的数据完全相同B. 所有节点上的数据保持同步更新C. 所有节点上的数据在某个时间点相同D. 所有节点上的数据可以不同7. 分布式系统中的负载均衡是什么?A. 将请求平均分配到多个服务器B. 将流量限制到单个服务器C. 将流量分散到多个服务器D. 将流量全部转发到单个服务器8. 分布式系统中的复制是什么?A. 在多个节点上创建数据的副本B. 将数据存储在远程位置C. 将数据加密D. 将数据存储在本地9. 分布式系统中的CAP理论指的是什么?A. 一致性、可用性和分区容错性之间的权衡B. 一致性、可用性和性能之间的权衡C. 一致性、可用性和可伸缩性之间的权衡D. 一致性、可用性和安全性之间的权衡10. 分布式系统中的分布式事务是什么?A. 一种需要在多个节点上同步执行的事务B. 一种可以在多个节点上并行执行的事务C. 一种不能在多个节点上同步执行的事务D. 一种可以在多个节点上同步执行但不需要一致性的事务11. 分布式系统的定义是什么?A. 一组独立的计算机通过网络进行通信和协作B. 一个硬件和软件的组合,能够在多个处理器上运行C. 一个提供分布式服务的互联网D. 一个由多个服务器组成的系统,每个服务器都有自己的资源12. 分布式系统中的“分布式”一词意味着什么?A. 多个系统组件位于不同的地理位置B. 多个系统组件共同工作以完成一项任务C. 多个系统组件独立地运行并相互通信D. 多个系统组件共享数据和资源13. 分布式系统中的节点可以是哪种类型?A. 主节点B. 从节点C. 客户端D. 所有类型的节点14. 分布式系统中的数据复制是为了什么目的?A. 提高系统性能B. 防止数据丢失C. 提高数据的可用性D. 保证数据的一致性15. 分布式系统中的负载均衡是一种什么技术?A. 将请求分配到多个服务器以优化性能B. 将流量限制到特定的服务器以避免拥塞C. 将客户端的请求直接路由到正确的服务器D. 使用一种算法来决定哪个服务器应该处理哪个请求16. 分布式系统中的共识算法是什么?A. 一种确保所有节点对数据的一致性达成一致的技术B. 一种用于同步不同节点之间的数据状态的技术C. 一种用于检测和处理网络延迟的技术D. 一种用于管理分布式系统中的故障的技术17. 分布式系统中的容错机制是什么?A. 一种确保系统在部分组件失败时仍能正常运行的技术B. 一种用于检测和修复系统错误的技术C. 一种用于保护系统免受恶意攻击的技术D. 一种用于限制系统中的用户数量的技术18. 分布式系统中的数据分片是什么?A. 将数据分割成小块以便于存储在不同的位置B. 将数据分割成小块以便于在不同的硬件设备上存储C. 将数据分割成小块以便于在不同的网络上进行传输D. 将数据分割成小块以便于在不同的时间点进行访问19. 分布式系统中的消息传递机制是什么?A. 一种用于在节点之间传递消息的技术B. 一种用于在节点之间同步数据的技术C. 一种用于在节点之间交换数据的技术D. 一种用于在节点之间协调任务的技术20. 分布式系统中的安全性是指什么?A. 保护系统免受未经授权的访问B. 保护系统免受未经授权的修改C. 保护系统免受未经授权的数据泄露D. 保护系统免受所有上述威胁21. 分布式系统的定义是什么?A. 一组计算机通过互联网进行通信和协调的系统B. 一个硬件和软件集合,能够在有限时间内处理大量数据C. 一个提供分布式服务的互联网系统D. 一种允许多个用户访问和共享资源的网络架构22. 分布式系统中的“分布式”一词意味着什么?A. 多个系统独立运行B. 数据存储在多个位置C. 系统具有高可用性和可扩展性D. 所有节点共同工作以完成特定任务23. 分布式系统的核心特性包括哪些?A. 可靠性B. 可用性C. 并发性D. 容错性24. 在分布式系统中,通常使用哪种通信协议?A. HTTPB. TCP/IPC. UDPD. ICMP25. 分布式系统中的“容错性”是什么意思?A. 系统在部分组件失败时仍能继续运行的能力B. 系统能够自动恢复丢失的数据或进程的能力C. 系统能够自我调整以避免单点故障的能力D. 系统能够确保所有节点之间的同步性26. 分布式数据库的概念是什么?A. 一个包含多个数据副本的数据库,以提高数据可用性和性能B. 一个只有一个数据副本的数据库C. 一个动态调整数据分布的数据库D. 一个支持实时数据更新的数据库27. 分布式系统的设计原则之一是什么?A. 高度集权B. 高度分散C. 高度可伸缩性28. 在分布式系统中,什么是“微服务”?A. 一种特定的编程风格或架构模式,其中应用程序被拆分成一系列小型服务B. 一种分布式系统的实现技术C. 一种单一的、集中的服务D. 一种特定的数据存储技术29. 分布式系统中的“同步”和“异步”有什么区别?A. 同步是指多个进程或线程在同一时间访问同一资源B. 异步是指多个进程或线程在不同的时间访问同一资源C. 同步通常用于需要数据一致性的场景D. 异步通常用于需要提高系统性能的场景30. 分布式系统的发展历程及其在不同领域中的应用有哪些?A. 分布式系统的发展始于20世纪80年代B. 分布式系统广泛应用于大数据处理、云计算、物联网等领域C. 分布式系统的发展受到了计算机网络技术的影响D. 分布式系统是现代计算机系统的基本组成部分31. 分布式系统的定义是什么?A. 一组通过网络进行通信的计算机系统B. 一个硬件和软件的组合,可以在多个位置进行数据处理和存储C. 一种允许多个服务器共享资源和数据的系统D. 一种设计用于处理大量数据并保证数据一致性的系统32. 分布式系统中的“分布式”一词意味着什么?A. 多个系统独立运行B. 资源共享C. 数据备份D. 所有这些都正确33. 分布式系统的核心特性是什么?B. 高可用性C. 任务无关性D. 资源共享34. 分布式系统中的“并发”是指什么?A. 同时执行多个任务B. 同时访问同一资源C. 同时处理多个数据流D. 同时修改数据库35. 以下哪个选项不是分布式系统中的常见同步问题?A. 机器之间的网络延迟B. 任务执行的先后顺序C. 共享资源的访问冲突D. 数据一致性问题36. 分布式系统中的“透明性”是指什么?A. 用户感觉好像所有的系统组件都在本地运行B. 系统管理员可以远程管理所有组件C. 应用程序的数据和代码在主机之间是可移植的D. 所有这些都正确37. 以下哪个分布式算法不是CAP定理中提到的?A. 客户端-服务器算法B. 一致性算法C. 分区容错算法D. 内容分发算法38. 分布式系统中的“分区容错”是什么意思?A. 在网络故障时,系统仍然可以运行B. 在网络分区时,系统能够继续运行C. 在网络拥堵时,系统仍然可以运行D. 在网络配置错误时,系统能够继续运行39. 以下哪个选项不是分布式系统中的常见性能指标?A. 响应时间B. 可扩展性C. 容错性D. 资源利用率40. 分布式系统与传统集中式系统的最大区别是什么?A. 可靠性更高B. 可伸缩性更好C. 无需依赖中央控制点D. 所有这些都正确二、问答题1. 什么是分布式系统?请简述其基本特性。
分布式数据库系统复习题
一、何为分布式数据库系统?一个分布式数据库系统有哪些特点?答案:分布式数据库系统通俗地说,是物理上分散而逻辑上集中的数据库系统。
分布式数据库系统使用计算机网络将地理位置分散而管理和控制又需要不同程度集中的多个逻辑单位连接起来,共同组成一个统一的数据库系统。
因此,分布式数据库系统可以看成是计算机网络与数据库系统的有机结合。
一个分布式数据库系统具有如下特点:物理分布性,即分布式数据库系统中的数据不是存储在一个站点上,而是分散存储在由计算机网络连接起来的多个站点上,而且这种分散存储对用户来说是感觉不到的。
逻辑整体性,分布式数据库系统中的数据物理上是分散在各个站点中,但这些分散的数据逻辑上却构成一个整体,它们被分布式数据库系统的所有用户共享,并由一个分布式数据库管理系统统一管理,它使得“分布”对用户来说是透明的。
站点自治性,也称为场地自治性,各站点上的数据由本地的DBMS管理,具有自治处理能力,完成本站点的应用,这是分布式数据库系统与多处理机系统的区别。
另外,由以上三个分布式数据库系统的基本特点还可以导出它的其它特点,即:数据分布透明性、集中与自治相结合的控制机制、存在适当的数据冗余度、事务管理的分布性。
二、简述分布式数据库的模式结构和各层模式的概念。
分布式数据库是多层的,国内分为四层:全局外层:全局外模式,是全局应用的用户视图,所以也称全局试图。
它为全局概念模式的子集,表示全局应用所涉及的数据库部分。
全局概念层:全局概念模式、分片模式和分配模式全局概念模式描述分布式数据库中全局数据的逻辑结构和数据特性,与集中式数据库中的概念模式是集中式数据库的概念视图一样,全局概念模式是分布式数据库的全局概念视图。
分片模式用于说明如何放置数据库的分片部分。
分布式数据库可划分为许多逻辑片,定义片段、片段与概念模式之间的映射关系。
分配模式是根据选定的数据分布策略,定义各片段的物理存放站点。
局部概念层:局部概念模式是全局概念模式的子集。
分布式系统复习题(chen)
分布式系统练习题(J2EE)题型:判断(10)、简答(5)、编程(4)、主观题(3)一、简答题1.简述远程方法调用(Remote Method Invocation,RMI)的基本通信原理。
答::远程方法调用(RMI)的基本通信原理:客户端与服务器端内在通过套接字通信。
服务器端1、创建远程服务对象2、接收请求、执行并返回结果(Skeleton)1)解码(读取)远程方法的参数;2)调用实际远程对象实现的方法;3)将结果(返回值或异常)返回给调用程序。
客户端1、建立与服务器的连接2、发送请求、接收返回结果(Stub)1)初始化连接;2)编码并发送参数;3)等待方法调用结果;4)解码(读取)返回值或返回的异常;5)将值返回给调用程序。
2.简述远程方法调用(Remote Method Invocation,RMI)的编程模型(主要编程步骤)。
答:远程方法调用(RMI)的编程步骤:1)定义远程接口;2)定义远程对象/服务;3)定义客户应用,并与远程对象通信;4)调用远程方法(参数及返回值)。
3.简述BMP实体Bean与CMP实体Bean的优缺点。
答:1、编程方面CMP比BMP简单BMP需要通过Bean代码实现数据库的操作;CMP则只需要做相关的映射就可以了。
2、功能方面BMP比CMP强大CMP一般用于单表操作;BMP则可用于单表和多表操作。
4.简述EJB2.1规范中实体Bean的finder方法在容器中的工作机制(要求阐述客户端调用finder方法时EJB容器调用Bean方法的过程)。
答:EJB2.1规范中实体Bean的finder方法在容器中的工作机制(容器调用机制)1.create(1)ejbCreate,若返回异常,则结束,否则转2(2)ejbActivate(3)ejbPostCreate(4)ejbStore(5)返回结果2.find...(1)ejbFind....,若返回异常,则结束,否则转2(2)对(1)返回的结果集,逐个处理(3-5)(3)若对象已经存在于容器内存中,则直接使用,否则转4(4)从Pool中取一个空闲对象,调用ejbActivate与主键值关联(5)调用ejbLoad方法(6)返回结果5.简述无状态会话Bean的生命周期(图示或文字描述均可)。
分布式系统复习题与参考答案(答案完全版)
关于分布式系统复习题与参考答案一、填空题(每题n分,答错个扣分,全错全扣,共计m分)1.下面特征分别属于计算机网络和分布式计算机系统,请加以区别:分布式计算机是指系统内部对用户是完全透明的;系统中的计算机即合作又自治;系统可以利用多种物理和逻辑资源,可以动态地给它们分配任务。
计算机网络是指互连的计算机是分布在不同地理位置的多台独立的“自治计算机”。
2.点到点通信子网的拓扑结构主要有以下几种:星型、环型、树型、网状型,请根据其特征填写相应结构。
网状型:结点之间的连接是任意的,没有规律。
环型:节点通过点到点通信线路连接成闭合环路。
星型:节点通过点到点通信线路与中心结点相连;树型:结点按层次进行连接。
3.分布式计算系统可以分为两个子组,它们是集群计算系统和网格计算系统。
4.分布式事务处理具有4个特性,原子性:对外部来说,事务处理是不可见的;一致性:事务处理不会违反系统的不变性;独立性:并发的事务处理不会相互干扰;持久性:事务处理一旦提交,所发生的改变是永久性的。
5.网络协议有三要素组成,时序是对事件实现顺序的详细说明;语义是指需要发出何种控制信息,以及要完成的动作与作出的响应;语法是指用户数据与控制信息的结构与格式6.根据组件和连接器的不同,分布式系统体系结构最重要的有4种,它们是:分层体系结构、基于对象的体系结构、以数据为中心的体系结构、基于事件的体系结构7.在客户-服务器的体系结构中,应用分层通常分为3层,用户接口层、处理层和数据层。
8.有两种类型的分布式操作系统,多处理器操作系统和多计算机操作系统。
9.软件自适应的基本技术有3种,一是要点分离、二是计算映像、三是基于组件的设计。
10.DCE本身是由多个服务构成的,常用的有分布式文件系统、目录服务、安全服务以及分布式时间服务等。
11.TCP/IP体系结构的传输层上定义的两个传输协议为传输控制协议(TCP)和用户数据报协议(UDP)。
12.Windows NT的结构借用了层次模型和客户/服务器两种模型。
分布式系统试题及答案
分布式系统复习题库及答案1、计算机系统的硬件异构性、软件异构性主要表现在哪几方面?参考答案:计算机系统的硬件异构性主要有三个方面的表现,即:①计算机的指令系统不同。
这意味着一种机器上的程序模块不能在另一种不兼容的机器上执行,很显然,一种机器上的可执行代码程序不能在另一种不兼容的机器上执行。
②数据表示方法不同。
例如不同类型的计算机虽然都是按字节编址的,但是高字节和低字节的规定可能恰好相反。
浮点数的表示方法也常常不一样。
③机器的配置不同。
尽管机器的类型可能相同,其硬件配置也可以互不兼容。
计算机系统的软件异构性包括操作系统异构性和程序设计语言异构性。
操作系统异构性的三个主要表现方面为:①操作系统所提供的功能可能大不相同。
例如,不同的操作系统至少提供了不同的命令集。
②操作系统所提供的系统调用在语法、语义和功能方面也不相同。
③文件系统不同。
程序设计语言的异构性表现在不同的程序设计语言用不同方法在文件中存储数据。
2、由于分布计算系统包含多个(可能是不同种类的)分散的、自治的处理资源,要想把它们组织成一个整体,最有效地完成一个共同的任务,做到这一点比起传统的集中式的单机系统要困难得多,需要解决很多新问题。
这些问题主要表现在哪些方面?参考答案:①资源的多重性带来的问题。
由于处理资源的多重性,分布计算系统可能产生的差错类型和次数都比集中式单机系统多。
最明显的一个例子是部分失效问题:系统中某一个处理资源出现故障而其他计算机尚不知道,但单机系统任何一部分出现故障时将停止整个计算。
另一个例子是多副本信息一致性问题。
可见,资源多重性使得差错处理和恢复问题变得很复杂。
资源多重性还给系统资源管理带来新的困难。
②资源的分散性带来的问题。
在分布计算系统中,系统资源在地理上是分散的。
由于进程之间的通信采用的是报文传递的方式进行的,通信将产生不可预测的、有时是巨大的延迟,特别是在远程网络所组成的分布计算系统中更是这样。
例如使用卫星通信会产生270毫秒的延迟。
大连理工大学分布式系统复习题
第一章分布式系统概述1.1什么是分布式系统?分布式系统是若干独立计算机的集合,它们对于用户来说就像一个系统。
1.2分布式系统中透明性的种类、定义。
透明性:如果一个分布式系统能够在用户和应用程序面前呈现为单个计算机系统,这样的分布式系统就称为是透明的。
分类:1、访问透明性:隐藏数据表示形式以及访问方式的不同2、位置透明性:隐藏数据所在位置3、迁移透明性:隐藏资源是否已移动到另一个位置4、重定位透明性:隐藏资源是否在使用中已移动到另一个位置5、复制透明性:隐藏资源是否已被复制6、并发透明性:隐藏资源是否由若干相互竞争的用户共享7、故障透明性:隐藏资源的故障和恢复8、持久性透明性:隐藏资源(软件)位于内存里或在磁盘上。
1.3分布式系统中的扩展技术有哪些?(1)隐藏通信等待时间:包括异步通信和减少通信量(2)分布技术:即分割组件,然后分散到系统中,例如DNS和WWW(3)复制技术: 多拷贝1.4 分布式系统的类型。
(1)分布式计算系统(分为群集计算系统和网格计算系统)(2)分布式信息系统(分为事务处理系统和企业应用集成)(3)分布式普适系统(如家庭系统、电子健保系统、传感器网络)第二章体系结构2.1四种体系结构样式。
分层体系结构(Layered architectures)(网络通信广泛应用)基于对象的体系结构(Object-based architectures)(特点:松散的组织结构;通过远程过程调用进行通信)以数据为中心的体系结构(Data-centered architectures)基于事件的体系结构(Event-based architectures)(优点:进程松散耦合)2.2客户端-服务器模型。
服务器(server):实现某个特定服务的进程客户(client):向服务器请求服务的进程客户端-服务器之间的一般交互:请求/回复(如下左图)基于无连接协议的客户和服务器通信:高效,但是易受传输故障的影响(无法检测消息是否丢失也无法解释是否发生传输故障)。
分布式操作系统复习大纲
分布式操作系统复习大纲在全面复习的基础上,注意掌握下列内容(一)分布式操作系统(0)分布式操作系统的定义文献中已经给出分布式系统的各种定义,没有一个是满意的并且没有一个为其他所同意。
为此,给出一个松散的特征就够了。
Tanenbaum给出如下定义:A distributed system is a collection of independent computers that appearsto its user as a single coherent system.(1)分布式系统的体系结构类型Tanenbaum和Renesse将分布式系统分成五类:❑小型机类型(minicomputer model)❑工作站类型(workstation model)❑处理机池类型(processor pool model)❑工作站-服务器类型(workstation-server model)❑混合类型(hybrid model)(2)构造分布式操作系统的途径⑴从头开始;⑵修改、扩充式;⑶层次式。
(3)分布式操作系统的层次结构一个分布式操作系统大致可分成四层,由内向外依次是:①执行层;②进程通信层;③服务支持层;④用户接口层。
(4)多机,网络和分布式操作系统间差别(5)透明性(Transparency)意义(6)分布式计算机系统的资源管理⑴从单个资源与多个管理者的相互关系❑全集中管理方式即专制(autocratic)管理❑功能分布管理方式即分担管理或分割(partitioned)管理❑浮动管理方式即轮流(successive)管理❑全分散管理方式即民主(democratic)管理⑵从多个资源与多个管理者的相互关系①集中:所有资源属一个管理者管理。
②分管:每一资源只属一个管理者管理。
③部分管理:每一资源属于若干管理者管理。
④合管:每一资源属于全部管理者共同管理。
⑶从实用的角度⑷分布式计算机系统的资源管理的算法①招标(投标)算法②回声算法③由近及远算法(7)分布式操作系统的同步算法⑴偏序Happened-Before关系(筒称HB)的定义:⒈a → b①若a和b是同一进程中的两个事件,且a在b前发生;或者,②若a是一进程中发送消息的事件,b是另一进程中接收同一消息的事件。
分布式控制系统复习资料
1、 简述分布式控制系统(集散控制系统的结构组成及其各自功能)组成部分:现场控制站、操作员站、工程师站、通信系统 现场控制站:完成系统的运算处理控制操作员站:完成人机界面功能、供操作员操作监视 工程师站:对DCS 进行应用组态和编程 通信系统:完成数据传输2、简述最小拍控制的特点(1)若参数不变,可以实现时间最优控制 (2)本质是开环控制(3)加反馈可实现闭环最优控制3、简述分布式控制系统的可扩展件、可移植性。
随着产品的完善和控制规模的扩人,分布式控制系统的硬件和应用软件可以增加。
硬件包括通讯系统、控制器和操作站等,应刖软件包括操作界面、控制功能和数模开发等。
一旦系统运行成功以后,可以被移植到任何相似的工艺过程中。
4、画出数字PID 闭环控制系统结构图,并阐述各部分特点。
答:在生产过程计算机控制系统中,采用图2.5所示的PID 控制,其算式为1()c dide u K e edt TT dt=++⎰ 或写成传递函数形式()1(1)()c d i U s K T s E s T s=++其中,c K 为比例增益,c K 与比例带δ成倒数关系,即1c K =,i T 为积分时间,d T 为微分时间,u 为控制量,e 为被控量y 与给定值r 的偏差。
5、简述选择性控制的基本原理 :(1)适应不同的工况,即设备在不同状态下,采用不同的控制方式。
通常的自动控制系统在遇到不正常工况或特大扰动时,很可能无法适应,只好从自动改为手动。
(2)基于安全考虑。
在手动操作的一段时间里,操作人员为确保生产安全,适应特殊情况,有另一套操作规律,若将这一任务交给另一控制器来实现,那就可扩大自动化应用范围,使生产更加安全。
(3)基于热备用考虑,一台控制器在线,另一台控制器热备用6、分布式控制系统为什么采用现场总线控制力式?采用现场总线控制方式具有如下优点:①消除4mA —20模拟仪表通讯的瓶颈现象:将传统的通讯是单向的模拟信号转变为双向的数字通讯:②降低现场安装费用和减少相应的设备;电缆和输入输山卡可以大幅度减少; ③增强了系统的自治性;采用现场总线标准智能仪表后,操作人员可以方便地在控制室刑现场设备进行监控;④系统组态简单、安装、运行和维修方便。
2015辽宁大学分布式操作系统思考题
2014 辽宁大学分布式操作系统思考题(6)1在交换式Dash多处理机系统中,为了保持缓存一致性,采用了Dash协议,某一簇中的一CPU写一未缓存的数据块,之后另外一簇的另外一CPU读该数据块。
试详细说明写操作和读操作是如何进行的。
(6)2在基于总线的多处理机系统中,遵循write once协议,假设有C1,C2,C3,C4四个CPU,一操作序列如下:C1读一字W1(只存在于共享存储器中)、C1继续读该字、C2读该字;C1修改该字、C3读该字、C4读该字。
试详细说明以上操作序列是如何执行的。
(5)3在分布式系统,为了获得文件读写的效率,可以在客户和服务器端设置缓存,说明如何设置缓存及目的。
并说明解决一致性问题的四种算法及各种算法存在的问题。
(5)4给出实现文件复制的三种方法,并举例说明更新复制文件的Gifford算法,并说明某些服务器崩溃时,应该采取什么措施。
(5)5 试说明举例什么是有状态服务器,什么是无状态服务器,并对有状态和无状态服务器进行详细的比较。
(5)6 在分布式系统中,可支持上载/下载文件模式或远程访问模式,说明这两种模式并进行比较。
(4)7 分布式协同一致算法的目标是使所有无故障处理机对待某些问题的意见达到一致,在3个正常处理机,2个出错处理机的情况下,用Lamport算法能否达成一致,给出算法的具体步骤。
(4)8在实时分布式系统中,事件触发和时间触发系统的含义是什么,给出一个例子,并说明为什么动态调度适合于事件触发系统,给出三种动态调度算法。
(4)9主动复制容错的典型例子是三模冗余容错,说明某组成部件出错和某表决器出错时,是如何容错的。
如果在某一级上同时有两个表决器出错,其它所有部件和表决器均正常,能否屏蔽错误,为什么?如果服务器采用主动复制的方法会存在什么问题,如何解决?(4)10使用主机后备容错方法容错的主要思想是:在任何一个时刻都有一台服务器是主机,若主机失效了,后备的服务器将承担其任务。
分布式系统复习题与参考答案(答案完全版)
一、 填空题(每题 n 分,答错 个扣 分,全错全扣,共计 m 分)
1.下面特征分别属于计算机网络和分布式计算机系统,请加以区别: 分布式计算机是指系统内部对用户是完全透明的; 系统中的计算机即合作又自治; 系统可以 利用多种物理和逻辑资源,可以动态地给它们分配任务。 计算机网络是指互连的计算机是分布在不同地理位置的多台独立的“自治计算机” 。 2.点到点通信子网的拓扑结构主要有以下几种:星型、环型、树型、网状型,请根据其特 征填写相应结构。 网状型 :结点之间的连接是任意的,没有规律。环型:节点通过点到点通信线路连接成闭 合环路。星型:节点通过点到点通信线路与中心结点相连;树型:结点按层次进行连接。 3.分布式计算系统可以分为两个子组,它们是集群计算系统和网格计算系统。 4.分布式事务处理具有 4 个特性,原子性:对外部来说,事务处理是不可见的;一致性: 事务处理不会违反系统的不变性;独立性:并发的事务处理不会相互干扰;持久性:事务处 理一旦提交,所发生的改变是永久性的。 5.网络协议有三要素组成,时序是对事件实现顺序的详细说明;语义是指需要发出何种控 制信息,以及要完成的动作与作出的响应;语法是指用户数据与控制信息的结构与格式 6.根据组件和连接器的不同,分布式系统体系结构最重要的有 4 种,它们是:分层体系结 构、基于对象的体系结构、以数据为中心的体系结构、基于事件的体系结构 7.在客户-服务器的体系结构中,应用分层通常分为 3 层,用户接口层、处理层和数据层。 8.有两种类型的分布式操作系统,多处理器操作系统和多计算机操作系统。 9.软件自适应的基本技术有 3 种,一是要点分离、二是计算映像、三是基于组件的设计。 10.DCE 本身是由多个服务构成的,常用的有分布式文件系统、目录服务、安全服务以及 分布式时间服务等。 11.TCP/IP 体系结构的传输层上定义的两个传输协议为传输控制协议(TCP)和用户数据报协 议(UDP)。 12.Windows NT 的结构借用了层次模型和客户/服务器两种模型。 13.常用的进程调度算法有先来先服务、优先数法和轮转法 14.进程的三个基本状态是就绪、执行、等待(阻塞)。 15.进程是 程序 在一个数据集合上的 运行过程 ,是系统进行资源分配和调度的一个 独 立单位 16.进程四个特征是 动态性, 并发性, 独立性 ,异步性。 17.操作系统通常可以分为以下几种类型:批处理系统、分时系统、 实时系统 、 网络操 作系统 和分布式操作系统。 18.解决死锁的基本方法包括预防死锁, 避免死锁,死锁检测,死锁恢复。 19.在引进线程的操作系统中,调度和分派的基本单位是线程,拥有资源的单位是进程。 20.在面向流的通信中,为连续提供支持数据流的模式有异步传输模式、同步传输模式和等 时传输模式三种。 21. 在流同步机制, 通常有在数据单元层次上进行显式同步和通过高级接口支持的同步两种。 22.在分布式系统中,挂载外部名称空间至少需要的信息是:访问协议的名称、服务器的名 称和外部名称空间中挂载点的名称。 23.在名称空间的实现中,为了有效实现名称空间,通常把它划分为逻辑上的三层,其三层 指的是全局层、行政层和管理层。
分布式系统复习
1、Java的集合包括Collection,Map。
2、资源消耗过多是影响分布式系统包括CPU,文件IO,网络IO,内存方面。
3、负载均衡是负载均衡机器采用随机选择,Hash选择,按权重选择,按负载选择,按连接选择策略把把用户请求转发到业务处理机。
4、水平伸缩通过增加机器来支撑访问量和数据量的方式;垂直伸缩通过升级或增加单台机器的硬件来支撑访问量和数据量增长的方式。
5、写出用TCP/IP+BIO实现基于消息方式实现系统间通信的主要过程。
答:Java中可基于Socket和ServerSocket实现TCP/IP+BIO的分布式系统间通信。
其中,Socket用于连接和网络I/O的操作,ServerSocket用于实现服务器端端口的监听及Socket 对象的获取。
TCP/IP+BIO实现基于消息方式实现系统间通信的主要过程是:客户端:(6分)(1)创建连接Socket socket = new Socket(目标IP,目标端口);(2) 创建读取服务器端返回流的BufferReaderBufferReader in = new BufferReader(new InputStreamReader(socket.getInputStream()));(3) 创建向服务器写入流的PrinterWriterPrinterWriter out = new PrinterWriter(socket.getOututStream(), true);(4)像服务器端发送字符串Out.println(“消息内容”);(5) 阻塞读取服务器的返回信息。
该阻塞过程会持续到服务器返回信息或网络异常为止。
In.readline( );服务器端核心代码:(4分)(1)创建本地指定端口的监听ServerSocket ss = new ServerSocket(监听端口)(2)接受客户端建连接请求Socket socket = ss.accept( );6、WebService调用的主要过程。
分布式操作系统考试题
四、质量标准及验收
1、乙方应按照国家相关标准及规范进行施工,确保工程质量达到合格标准。 2、甲方有权对施工过程进行监督和检查,并对不合格的部位提出整改意见。
3、工程完工后,双方共同进行验收,验收合格后方可投入使用。
五、合同价款及支付方式
1、本工程预算为元人民币,具 体价款以实际工程量为准。
一、工程概况
1、工程名称:脚手架施工合同
3、工程范围:脚手架搭建及拆 除等施工工作。
二、合同工期
1、脚手架施工自X年月日开始, 至X年月日结束。
2、如遇不可抗力因素导致工程无法正常进行,双方应协商解决。
三、合同价款及支付方式
1、脚手架施工费用为人民币 (以下简称“元”)万元整。
2、自合同签订之日起五个工作日内,甲方向乙方支付万元作为预付款。
5、本合同未尽事宜,双方可另 行协商补充。
6、本合同一式两份,甲乙双方各执一份,具有同等法律效力。自双方签字 盖章之日起生效。建筑工程脚手架施工合同协议
甲方:
乙方:
根据《中华人民共和国合同法》及相关法律法规的规定,为明确双方在建筑 工程脚手架施工中的权利和义务,保障工程质量,现经双方协商一致,签订本协 议:
3、余款在脚手架施工结束并验 收合格后五个工作日内付清。
4、支付方式:银行转账或现金 支付。
四、质量要求及验收标准
1、乙方应按照国家相关标准和施工图纸要求进行施工,确保脚手架的牢固 性和稳定性。
2、脚手架材料应符合国家相关质量标准和施工图纸要求,并经过质量检验 合格。
3、验收标准:脚手架施工结束后,乙方应按照国家相关标准和施工图纸要 求进行自检,并通知甲方进行验收。甲方应在接到通知后五个工作日内进行验收, 并签署验收报告。
山财分布式软件开发复习提纲
分布式软件开发
一、名词解释题(本大题共5小题,每小题4分,共20分)
二、简答题(本大题共5小题,每小题6分,共30分)
三、算法分析题(本大题共2小题,每小题15分,共30分)
四、代码分析题(本大题共1小题,共10分)
五、论述题(本大题共1小题,共10分)
考试时间:2015年7月3日3‐4节 (10:20‐11:50)
考试地点: 2313
(1)名词解释及简单
高速缓存一致性
C/S模式的优缺点
时钟偏移
RPC中孤儿问题
工作站模型
实时系统
分布式系统的优点
RPC的主要步骤。
线程的状态
客户‐服务器模式
分布式操作系统
位置透明
异步传输
迁移透明
ATM网
处理机池模型
文件服务器
同步传输
(2)算法分析:
用Lamport算法对时钟进行校正
Bully算法
最低松弛度优先算法
互斥算法
Berkeley算法
分布式文件系统中的表决算法
令牌环算法
实验报告:
实验报告1: Linux环境下的C编程
(内容:如何进行Linux环境下的C语言程序的编辑,编译以及可执行文件的生成)
实验报告2:利用Makefile进行编译
实验报告3:文件的读写
实验报告4:进程管理
实验报告5:网络售票系统
实验报告提交方式:以班级为单位7.3之前发到邮箱 sdiecs_lzh@
每人一个文件夹,文件夹名字为学号,实验报告的命名方式:例如201114023,张三的第一个实验报告命名为“201114023张三lab1”。
分布式系统及微服务架构考试
分布式系统及微服务架构考试(答案见尾页)一、选择题1. 分布式系统的定义是什么?A. 一种软件系统,其组件分布在多个计算机网络上B. 一种软件系统,其所有组件都运行在同一个计算机上C. 一种软件系统,其组件分布在多个计算机网络上,并且相互协作以提供分布式服务D. 一种软件系统,其所有组件都运行在同一个计算机上,并且相互协作以提供分布式服务2. 微服务架构是一种什么类型的架构?A. 面向过程的架构B. 面向对象的架构C. 面向服务的架构D. 面向功能的架构3. 分布式系统中的数据一致性是指什么?A. 所有节点在同一时间点具有相同的数据副本B. 所有节点在同一时间点具有不同的数据副本C. 所有节点在不同时间点具有相同的数据副本D. 所有节点在不同时间点具有不同的数据副本4. 微服务架构中,服务之间通信的主要协议是什么?A. HTTP/HTTPSB. RPC (远程过程调用)C. SQLD. WebSocket5. 分布式系统中,如何实现服务发现和负载均衡?A. 使用DNS进行服务发现,使用随机算法进行负载均衡B. 使用ZooKeeper进行服务发现,使用轮询算法进行负载均衡C. 使用Consul进行服务发现,使用随机算法进行负载均衡D. 使用Etcd进行服务发现,使用一致性哈希进行负载均衡6. 微服务架构中,通常使用哪种数据库?A. 关系型数据库(如MySQL、Oracle)B. 面向关系的数据库(如PostgreSQL、SQL Server)C. 面向文档的数据库(如MongoDB、Couchbase)D. 消息队列数据库(如RabbitMQ、Kafka)7. 分布式系统中的容错机制主要有哪些?A. 数据备份与恢复B. 节点冗余C. 容错算法(如Paxos、Raft)D. 分布式事务8. 微服务架构中,服务之间的依赖管理如何实现?A. 通过API网关进行服务之间的依赖管理B. 通过服务注册与发现机制进行服务之间的依赖管理C. 通过消息队列进行服务之间的依赖管理D. 通过配置中心进行服务之间的依赖管理9. 分布式系统中的安全性如何保证?A. 使用SSL/TLS加密通信B. 使用强密码策略C. 访问控制列表(ACL)或身份验证机制D. 定期进行安全审计10. 微服务架构中,如何实现服务监控和日志收集?A. 使用日志聚合工具(如ELK Stack)B. 使用监控工具(如Prometheus、Grafana)C. 使用服务注册与发现机制进行服务监控D. 使用集中式的配置中心进行服务日志收集11. 分布式系统的定义是什么?A. 一种将多个应用程序部署在一个或多个节点上的系统B. 一种将多个服务组件集成到一个应用程序中的系统C. 一种将多个计算机连接在一起的网络系统D. 一种将多个数据库连接在一起的系统12. 微服务架构是一种什么类型的架构?A. 一种单一应用程序的结构B. 一种将单个应用程序拆分成多个独立运行的服务的设计C. 一种集中式的系统架构D. 一种将多个服务器连接在一起的架构13. 分布式系统中的数据一致性是指什么?A. 数据在多个节点上保持相同值的状态B. 数据在多个节点上保持不同值的状态C. 数据在多个节点上保持同步更新的状态D. 数据在多个节点上保持临时不一致的状态14. 在分布式系统中,通常使用什么来保证数据的一致性?A. 使用分布式事务协议B. 使用分布式锁机制C. 使用分布式数据库技术D. 使用负载均衡技术15. 微服务架构中的服务注册与发现是为了实现什么功能?A. 服务之间的通信和协作B. 节点的动态管理和调度C. 服务的安全访问控制D. 服务的负载均衡和容错16. 分布式系统中的冗余设计主要是为了实现什么目标?A. 提高系统的可用性和性能B. 提高系统的可靠性和稳定性C. 提高系统的可扩展性和灵活性D. 提高系统的保密性和安全性17. 在微服务架构中,服务之间通信的主要协议是什么?A. HTTP/HTTPSB. TCP/IPC. RPC (远程过程调用)D. Message Queue18. 分布式系统中的负载均衡是一种什么技术?A. 将请求平均分配到多个节点的技术B. 将请求顺序分配到多个节点的技术C. 将请求随机分配到多个节点的技术D. 将请求根据优先级分配到多个节点的技术19. 微服务架构中的服务监控和管理是为了实现什么功能?A. 服务的实时运行状态监控B. 服务的故障自动恢复C. 服务的性能优化D. 服务的安全访问控制20. 分布式系统中的数据分片是一种什么技术?A. 将数据分散存储在不同的节点上B. 将数据集中存储在单个节点上C. 将数据分散存储在不同的磁盘或存储器上D. 将数据集中存储在多个磁盘或存储器上21. 分布式系统的定义是什么?A. 一组独立的计算机通过网络进行通信B. 一组独立的计算机通过网络进行协作C. 一组独立的计算机通过网络进行负载均衡D. 一组独立的计算机通过网络进行数据同步22. 微服务架构是一种什么类型的架构?A. 面向功能的架构B. 面向服务的架构C. 面向资源的架构D. 面向对象的架构23. 分布式系统中的数据一致性是如何保证的?A. 通过分布式事务管理B. 通过分布式锁机制C. 通过分布式状态同步D. 通过分布式文件系统24. 微服务架构中,服务之间的通信通常使用哪种协议?A. HTTP/HTTPSB. TCP/IPC. RPC(如gRPC或Thrift)D. WebSocket25. 分布式系统中的负载均衡是如何实现的?A. 负载均衡器进行流量分发B. 负载均衡器进行请求分发C. 负载均衡器进行服务分发D. 负载均衡器进行数据分发26. 微服务架构中的服务注册与发现机制是如何工作的?A. 服务注册与发现是通过静态配置实现的B. 服务注册与发现是通过动态API实现的C. 服务注册与发现是通过集中式目录实现的D. 服务注册与发现是通过DNS解析实现的27. 分布式系统中的容错机制如何实现?A. 通过冗余设计B. 通过失败转移机制C. 通过错误检测机制D. 通过数据备份机制28. 微服务架构中的熔断器模式是如何工作的?A. 通过限制请求速率来防止服务过载B. 通过隔离故障服务来防止故障扩散C. 通过动态路由来防止故障转移D. 通过熔断器来检测故障并切断依赖29. 分布式系统中的数据分片是如何实现的?A. 通过数据库分片技术B. 通过分布式数据库技术C. 通过数据复制技术D. 通过数据压缩技术30. 微服务架构中的服务监控和日志收集是如何实现的?A. 通过集中式监控工具B. 通过分布式追踪技术C. 通过日志聚合技术D. 通过自定义监控脚本31. 分布式系统具有的特性包括哪些?A. 可扩展性B. 高可用性C. 透明性D. 容错性32. 微服务架构与传统单体架构的主要区别是什么?A. 单体架构只包含一个应用程序,而微服务架构将应用程序拆分成多个独立的服务。
2015-分布式系统作业答案
第一次作业⏹1、什么是分布式系统?举例说明一个分布式系统的特点答:(略)⏹2、设计一个简单的服务器,它不用访问其他服务器就能够满足客户的请求。
解释为什么在这种状况下不能限制服务器响应客户请求的响应时间。
如果需要限制,应该对上面的设计做什么改动?这种限制在实际应用中有意义么?答:增加服务器副本。
3、12306订票系统2011年第一次上线的时候曾经出现过很多问题。
若请你设计这个网站,有什么问题需要解决,如何解决?答:(略)第二次作业⏹1、请分析面向消息的通信方式与RPC和RMI有什么区别。
答:(略)⏹2、一个客户向服务器发出RPC。
客户花5ms时间计算每个请求的参数,服务器花10ms处理每个请求。
本地操作系统每次发送和接收的时间是0.5ms,网络传递或者应答消息的时间是3ms。
编码、解码每个消息需要0.5ms。
计算一个RPC实现所需要的时间。
答:计算参数5+准备参数0.5+发送0.5+网络传输3+接受0.5+解码参数0.5+计算10+准备参数0.5+发送0.5+网络传输3+接受0.5+解码参数0.5=25ms第三次作业⏹ 1.为什么多线程的文件服务器的效率好于单进程文件服务器?答:(略)⏹ 2.设计一个并发服务器,它为每个到来的请求创建一个服务器进程。
请分析这种设计与多线程服务器之间的利弊。
答:使用多进程的一个重要的优势就是进程之间可以进行保护。
这在一个超级服务器上不同的进程分别执行独立的任务十分有利;但是多进程的一个问题就是与多线程相比开销比较大。
如果进程之间需要通信,则使用多线程可以更好地完成通信任务。
⏹4、(选作)、在所有的处理器分配算法中,找四种算法进行比较(例如算法复杂度,开销等等),并举例说明该算法可以应用在何种环境中。
答:(略)第四次作业⏹ 1. 使用缓存如何提高名字服务的可用性?答:(略)⏹ 2. 在层次化方法中,如果层次是k,如果一个实体移动了位置,最多要修改多少个节点的位置记录?答:(1)如果不将根计算在内的k层,则最多的修改是移走一枝的k+1个记录,而目标一枝上的k+1个记录也需要修改。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10. 有三个进程分别运行在不同的机器上,每个机器都有自己的时钟并以不同且不变的速 率工作(进程 1 的时钟嘀嗒了 6 下时,进程 2 的时钟嘀嗒了 8 下,而进程 3 的时钟嘀 嗒了 10 下)。举例说明进程之间消息传递中违反先发生关系的情况,并说明如何用 Lamport 方法解决。
11. How Web Services work? 1 客户发现服务器 2 客户通过建立 TCP 连接来绑定服务 器 3 客户建立 SOAP 请求 4 SOAP 路由器路由请求给合适的服务 器 5 服务器把请求解包,然后处理, 并返回结果 6 结果通过相反的路径返 回到客户端
而三种类型的资源对机器的绑定是未连接资源、附着连接资源和紧固连接资源。 15. 中间件是一种应用程序,它在逻辑上位于应用层中,但在其中包含有多种通用协议,这
些协议代表各自所在的层,独立于其他更加特别的应用。 16. 在 RPC 操作中,客户存根的功能是将得到的参数打包成消息,然后将消息发送给服务
器存根。 17. 虚拟化可采用两种方法,一是构建一个运行时系统,提供一套抽象指令集来执行程序。
4. 集群计算系统一个突出的特征是它的同构性;它提供了最大限度的分布式透明性。可用 于单个程序在多台计算机上并行地运行。
5. TCP/IP 体系结构的传输层上定义的两个传输协议为传输控制协议(TCP)和用户数据报 协议(UDP)。
6. 客户/服务器结构的应用程序通常划分为三层,它们是:用户接口层、处理层和数据层。 7. 在逻辑时钟算法中,Lamport 定义了一个称作“先发生”的关系,表达式 ab 表示 a
CPU 所必需的最少量信息。 12. 有两种实现线程 包的基本方法:一是可以构造一个完全在用户模式下执行的线程;二
是由内核来掌管线程并进行调度。 13. 在代码迁移的框架结构中,进程包含三个段,它们是代码段、资源段和执行段三个段。 14. 进程对资源的绑定有三种类型:一是按标识符绑定;二是按值绑定;三是按类型绑定。
3)以数据为中心的体系结构,其发展思想:进程通信需要通过一个公用(被动或主动的) 仓库。可以分成两个关键的部分:展现当前状态的中央数据结构和一个对数据进行操作的独 立组件的集合 4)基于事件的体系结构,进程基本上是通过事件的抟播来通信的,事件传播还可以有选择 地携带数据。基本思想是:进程发布事件,然后,中间件将确保那些订阅了这些事件的进程 才接收它们,优点是进程是松散耦合的。
9. 实 现 分 布 式 系 统 同 步 的复 杂 性 表 现 在 哪 几 个 方面 ? 说 明 先 发 生 关 系 ,并 说 明 在 LAMPORT 算法中怎样给事件分配时间。
答:分布式算法有如下性质:1)相关信息分散在多台机器上;2)进程决策仅依赖于本地信息;3)系 统中单点故障应避免;4)没有公用时钟和其他精确的全局时间资源存在。前三点说明在一处收集所有 信息并对他们进程处理是不可接受的,左后一点说明在分布式系统获得时间上的一致并不是容易的。 LAMPORT 算法的解决方案是直接使用先发生关系,每条消息都携带发送者的时钟以指出其发送的时间, 当消息到达时,接受者的时钟比消息发送者时钟小,就立即将自己的时钟调到比发送者的时间大 1 或更 多的值,我们给出一种测量时间的方法,使得对每一事件 a,在所有进程中都认可给它一个时间值 C(a), 在给事件分配时间时要遵循一下规则:1)在同一进程中 a 发生在 b 之前则 C(a)<C(b);2)若 a 和 b 分 别代表发送消息和接收消息,则 C(a)<C(b);3)对所有事件 a 和 b,C(a)≠C(b)
互。 22. 分布式系统中,有三种不同的命名系统,它分别是无层次命名;结构化命名和基于属性
的命名。 23. 在无层次命名中,通常有广播和多播、转发指针、基于宿主位置、分布式散列表、分层
结构等方法实现实体定位。
24. 基于属性的命名系统实现的方式有两种。一种是分层实现,使得目录项集合形成了分层
的目录信息树。而另一种是非集中式实现,它是采用映射到分布式散列表的方式。
二是提供虚拟机监视器。 18. 在面向消息的通信中,通常分为面向消息的瞬时通信和持久通信两种机制。 19. 在面向消息的瞬时通信中,通常采用套接字接口和消息传递接口。 20. 在面向持久的通信中,消息队列系统为持久异步通信提供多种支持。它提供消息的中介
存储能力。 21. 在消息队列系统中,队列由队列管理器来管理,它与发送或接收消息的应用程序直接交
7. 简述分布式系统设计所面临的问题及遇到的挑战。 1):难以合理设计分配策略,在集中式系统中,所有的资源都由系统系统管理和分配,但在 分布式系统中,资源属于局部工作站或个人计算机,所以调度的灵活性不如集中式系统,资 源的物理分布可能与服务器的分布不匹配,某些资源可能空闲,而另外一些资源可能超载。
2):部分失效问题:由于分布式系统通常是由若干部分组成的,各个部分由于各种各样的原 因可能发生故障,如硬件故障。如果一个分布式系统不对这些故障对这些问题进行有效的处 理,系统某个组成部分的故障可能导致整个系统的瘫痪。 3)性能和可靠性过分依赖于网络:由于分布式系统是建立在网络之上的,而网络本身是不 可靠的,可能经常发生故障,网络故障可能导致整个系统的终止;另外,网络超负荷会导致 性能下降,增加系统的响应时间。 4)缺乏统一控制:一个分布式系统的控制通常是一个典型的分散式控制,没有统一的中心 控制。因此,分布式系统通常需要相应的同步机制来协调系统中各个部分的工作; 5)安全保密性问题:为了获得可扩展性,分布式系统中的许多软件接口都提供给用户,这 样的开放结构对于开发人员非常有价值,担同时也为破坏者打开了方便之门 挑战:设计与实现一个对用户来说是透明的且具有容错能力的分布式系统。 挑战:1. Heterogeneity 异构性,包括网络、硬件、操作系统、编程语言、Implementation 组件,<中间件的作用就是隐藏这些异构,并提供一致的计算模式(模块)>,<虚拟机,编 译器成虚拟机使用的 code>;2. Openness 开放性:提供 Services, Syntax, Semantics, 合适的接口定义需要兼顾完整性和中立性,同时互操作性和便携性也是重要的,分布式系统 需要 flexible,即易于配置且把策略和结构分开来获得 flexible;3. Security 安全性: 安全性包括有效性,机密性,完整性三个要素,拒绝服务攻击和移动代码安全是两个安全方 面的挑战。4. Scalability 可扩展性(可测性),即在资源和用户增加的时候保持效率, size、geographically、administratively 的 scaleble。要求分散(分布式)算法,没有 机器有系统状态的完整信息,机器做决定仅仅是取决于本地信息,一个机器的错误不会毁掉 整个算法,没有统一时序。5. Failure Handling 错误处理。6. Concurrency 协力, 一致(并发?) 7. Transparency 透明度 8. 对于接收消息 Receive 原语,为什么需要缓存, 缓存的作用是什么?
25. 向量时钟能捕获因果关系。创建向量时钟是让每个进程 Pi 维护一个向量 VCi 来完成。
26. 互斥集中式算法的优点是易于实现、很公平、保证了顺序一致性。而缺点是协作者是单
个故障点,如果它崩溃了,整个系统可能瘫痪。
27. 分布式互斥算法的优点是不会发生死锁与饿死现象,也不存在单个故障点。
28. 服务器集群在逻辑上由三层组成,第一层是逻辑交换机;第二层是应用/计算服务;第
4)解码(读取)返回值或返回的异常; 5)将值返回给调用程序。
4. 试举例说明没有统一时钟的分布式系统会发生什么问题?
解答:当每台机器有它自己的时钟时,一个发生于另一事件之后的事件可能会 被标记为一个比另一个事件更早的时间。例:
5. 什么是 RPC?试简述 RPC 的执行步骤。 答:RPC 是 remote procedure call(远程过程调用)的简称。RPC 思想是使远程的过程调 用就像在本地的过程一样,调用者不应该意识到此调用的过程是在其他机器上实行的。 RPC 的执行步骤: (1) 客户过程以普通方式调用相应的客户存根; (2) 客户存根建立消息,打包并激活内核陷阱; (3) 内核将消息发送到远程内核; (4) 远程内核将消息发送到服务器存根; (5) 服务器存根将消息解包,取出其中参数后调用服务器过程; (6) 服务器完成工作或将结果返回服务器存根; (7) 服务器存根将它打包并激活内核陷阱; (8) 远程内核将消息发送至客户内核; (9) 客户内核将消息交给客户存根; (10) 客户存根将消息解包,从中取出结果返回给客户;
答:如果不适用缓存,服务器接收来的消息会被丢弃或者存在诸如服务器需要存储和管理早到来的消息 这样的问题。缓存的作用就是用来统一管理消息的:它定义了一种叫邮箱的数据结构,接收客户端请求 的进程通知内核创建邮箱存储消息,并且指定了访问地址。当 Receive 原语调用是,系统内核就会提取 消息并知道如何处理它。
都在提供相关的云服务。但归纳起来,当前云提供者可以分为三大类,即 SaaS 提供商、
和
提供商。 PaaS、IaaS
Байду номын сангаас
二、非填空题
1. 要使用 Lamport 时间戳实现全序多播,是不是每个消息都必须要被严格地确认? 答:不需要,任何类型的消息,只要它的时间戳大于所接收到的消息的时间戳,就可以被加 入消息队列,使用 Lamport 时间戳实现全序多播。 2. 简要描绘全局唯一标识符的一个有效实现 答:这些标识符可以在以下方式中可以局部产生:将产生标识符的机器所在的网络地址,附 加上当地时间,沿用一个伪随机数.虽然,在理论上,另一台机器也很有可能产生相同的数字, 这种机会微乎其微。 3. 简述远程方法调用(Remote Method Invocation,RMI)的基本通信原理。 答::远程方法调用(RMI)的基本通信原理:
客户端与服务器端内在通过套接字通信 服务器端 1、创建远程服务对象 2、接收请求、执行并返回结果(Skeleton)