分布式计算环境知识点汇总_第1页
分布式计算环境知识点汇总_第2页
分布式计算环境知识点汇总_第3页
分布式计算环境知识点汇总_第4页
分布式计算环境知识点汇总_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 什么是分布计算?什么是分布式计算环境?分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。定义:分布式计算是一种把需要进行大量计算的工程数据(任务)分割成小块,由多台计算机分别计算,在上传运算结果后再统一合并得出数据结论的科学。分布式计算环境是为分布式应用开发、集成、运行及管理、维护等提供支持的基础设施,以及编程模型、协作模型、程序库、框架等 分布式计算环境与分布式操作系统的区别是什么?视图不同,屏蔽的程度不同 分布式操作系统 ( 松耦合硬件 紧耦合软件) 单系统映

2、像 单一的全局的进程间通讯 进程管理处处相同 分布式文件系统 相同的系统调用,各机器上系统内核相同如:Amoeba Mach 等等 同步, 事务, 进程管理 调度 处理器的分配. 分布式文件系统, 分布式共享存储器. 网络操作系统 ( 松耦合硬件 紧耦合软件) 高度自治 简述分布计算技术的发展历程及标志性成果?40-50年的历史20世纪80年代 研究为主,开始阶段 20世纪90年代 高速发展阶段 现在 蓬勃发展 新的计算模式不断涌现:普适计算、云计算、移动云计算分布式计算技术经历了三个阶段:面向过程、面向对象、面向服务面向过程的分布式计算环境核心是远程过程(RPC)机制,称为DCE/RPC,其

3、思想把本地的过程调用扩展到分布式环境,当程序员调用一个远程过程时,实际执行的是一个代理函数,代理过程目的是编排输入函数,并传送到远程服务器,服务器进程包含占位模块(STUB),其作用是提取输入参数并传送给实际的远程过程,函数结果编排后又返给客户代理过程,在代理过程提取返回值给远程调用者。面向对象组件技术,核心技术是ORB,如同一条总线把分布式对象系统中的各类对象和应用链接成相互作用的整体。分布式对象技术本质是在分布式异构环境下建立一个应用系统框架,在该框架下,各种软件功能被封装为易于管理和使用的分布式对象组件,并可进行组装,主流技术为CORBA,DCOM,JAVA RMI面向服务的web se

4、rvice,有效的基于internet的分布式计算体系结构,使得应用程序、业务过程按照前所未有的方式一起工作,真正做到跨网络、跨语言、跨平台。异构平台间防火墙通信:无语言相关性、无平台相关性、无对象相关性。主流技术:数据通信协议SOAP。现存的分布式计算存在的公共问题包括:标准问题、软件方法学问题、质量和可用性问题、异构问题随着分布式计算技术研究的不断深入,许多研究者发现单个技术在技术手本身、应用领域等方面的局限性越来越明显,从而把目光投向多种现有分布式计算技术的综合,是未来分布式计算技术的发展趋势,例如OGSA是网格技术和WEB service的综合结果,被称为下一代网格体系结构,在OGSA

5、框架中,将一切都抽象为服务,包括计算机、程序、数据、仪器设备等。这种观念,有利于通过统一的标准接口来管理和使用网格,OGSA 在原来Web Service 服务概念的基础上,提出了“网格服务(Grid Service)”的概念,用于解决服务发现、动态服务创建、服务生命周期管理等与临时服务有关的问题。 请给出如下缩略语的中英文全称 ü TCP/IP:Transmission Control Protocol/ Internet Protocol、传输控制协议/互联网协议NSF、RPC:Remote Procedure Call protocol、远程控制调用协议DCE:Distribu

6、ted Computing Environment、分布式计算环境CORBA:Common Object Request Broker Specification、公共对象请求代理体系结构EJB、JEE、CCM CORBA: Component Model、SOA、WSDL、SAOP、IIOP、GIOP、UUDI、XML (Extensible Markup Language、CDR、XDR:eXternal Data Representation、IDL : Interface Definition Language 什么是客户/服务器模型?其特点是什么? 最简单、最流行、最经典的分布计算模

7、型,由客户(Client)、服务器(Server)构成,技术特点为: üServer扮演服务提供者,被动等待请求的到达,部署数据管理逻辑、事务处理逻辑 üClient扮演服务使用者,主动发送请求等待应答,部署表现逻辑 一个Server通常支持多个Client ü由于双方的非对称角色,使得事件的同步被大大简化 经典的分布式计算模型都有哪些?针对3个典型的模型给出其含义及特点描述。消息传递模型 : 分布式应用的最基本模型,核心要素:消息M、发送者Sender、接收者Receiver消息传递模型所需要的基本操作 Send Receive Connect/Disconne

8、ct §典型消息传递模型的例子 üSocket ü发送者将消息写入到socket 接收者从socket中提取消息客户-服务器模型 :最简单、最流行、最经典的分布计算模型,由客户(Client)、服务器(Server)构成,技术特点为: üServer扮演服务提供者,被动等待请求的到达,部署数据管理逻辑、事务处理逻辑 üClient扮演服务使用者,主动发送请求等待应答,部署表现逻辑 一个Server通常支持多个Client ü由于双方的非对称角色,使得事件的同步被大大简化消息系统模型 § 信息系统构成要素:发送者(Sender

9、)、接收者(Receiver)、消息系统(Message System)§ 消息系统充当一些相互独立的进程之间的中介,即充当进程间消息传递的一种交换开关§ 进程之间没有耦合关系,异步交换信息 空间、时间、控制上解耦进程过程调用模型分布对象模型 构件-容器模型 面吐服务模型 Map/Reduce模型 对等计算模型 :P2P实际是Client/Server模型的扩展或者说是一种特例。各参与进程地位平等,有相同的性能和责任;任何两个间可以互相发起请求和接收响应;适合即时消息、P2P文件传输、视频会议、协同工作等 消息系统和消息传递模型有何区别? 构成要素不同:消息系统模型 发送者

10、(Sender)、接收者(Receiver)、消息系统(Message System)消息系统充当一些相互独立的进程间的中介,即充当进程间消息传递的一种交换开关 消息传递模型:消息M、发送者Sender 和接收者Receiver实现不同:消息系统进程间没有耦合关系,异步交换信息,空间、时间、控制上解耦 消息传递模型:所需要的基本操作 Send Receive Connect/Disconnect ,发送者将消息写入到socket 接收者从socket中提取消息 RPC和消息传递模型有何区别? 进程过程调用(RPC)是一种象调用本地过程一样调用进程机器上的过程,而不需要了解网络细节的进程过程访问

11、支持机制。RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。 RPC和远程对象有何区别? ü 过程和对象有何区别? 面向过程一种以事件为中心的编程思想,以功能(行为)为导向,按模块化的设计,就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一

12、个一个依次调用就可以了。 面向对象一种以事物为中心的编程思想,以数据(属性)为导向,将具有相同一个或者多个属性的物体抽象为“类”,将他们包装起来;而有了这些数据(属性)之后,我们再考虑他们的行为(对这些属性进行什么样的操作),是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。ü 作为服务的过程和作为服务的对象有何区别? 构件-容器模型和远程对象有何区别? 构件-容器模型:容器为构件提供更加抽象的运行环境 基础服务支持 生命周期管理 维护构件间的关系1. Socket的作用是什么?什么是流式套接字?什么是数据报套接字?

13、 新型§ Socket支持面向连接TCP/IP (Transmission Control Protocol )和无连接UDP (User Datagram Protocol )、IPX (Inter-network Packet Exchange)的通信协议,它提供编程接口,是一种特殊的文件描述符 (everything in Unix is a file) ,并不仅限于TCP/IP §流式套接字(SOCK_STREAM) 提供了一个面向连接,可靠的数据传输服务,数据无差错,无重复地发送丏挄发送顺序接收内设流量控制,避免数据流超限;数据被看作是字节流,无长度限制 FTP即

14、用此 §数据报套接字(SOCK_DRAM) 提供了一个无连接服务数据包以独立包形式被发送,不提供无差错保证,数据可能丢失或重复,接受顺序无序 网络文件系统NFS2. 请描述基于Socket的应用开发的基本流程,并用图示描述。 3. 基于Socket编程具有哪些优缺点? Socket编程优点:实时持久?原始的socket API局限性位于不同机器上的软件互操作困难 容易出错 过于复杂 Socket API 通过一个接口来支持多个 o API将协议簇、通信/连接角色、通信优化、选项功能都结合到一个API中,其造成的结果复杂难以掌握。 不可移植或不统一。不透明性,专用性,缺乏通用性,每次都

15、从头开始,浪费大量的资源,需要做太多雷同工作重用性和互操作性差,不能与其他系统有机地集成,开发效率低!4. 基于Socket进行应用开发和基于RPC进行应用开发的区别是什么?他们各自具有什么样的优缺点? 开发基于SOCKET的网络软件非常复杂(如:FTP、TELNET),位于不同机器上的软件互操作困难。(优缺点同3题)RPC优点:隐藏(屏蔽)了进程过程访问的所有细节,实现了进程过程访问的透明性 缺点:5. 要实现远程过程调用需要解决哪两个关键问题?SUN RPC是如何解决的? 6. 请描述远程过程调用RPC的基本原理。 7. RPC机制中的Stub机制的作用是什么?客户Stub1)建立客户与服

16、务器之间的连接2)将客户的高层调用语句打包为一条底层的请求消息这一过程在RPC中被称为编码3)等待服务器返回应答消息4)将来自服务器底层的应答消息解析为可以返回的数据这一过程在RPC中被称为还原(unmarshal)5)将返回值传送给客户程序 需要特别处理:编码、字节序等问题 服务器端Stub除了需要进行编码、还原外,还需要区分客户所请求的过程名,然后将客户的请求分派(dispatch)给正确的过程8. 什么是数据的内部表示?什么是数据的外部表示? 外部表示:网络传输的二进制流数据流是内部表示:每种体系结构的计算机对数据的内部存储格式 9. 数据表示当中为什么要进行字节对齐? 各个硬件平台对存

17、储空间的处理上有很大的不同 一些平台对某些特定类型的数据只能从某些特定地址开始存取 如果不挄照适合其平台要求对数据存放对齐,在存取效率上带来损失 比如有些平台每次读都是从偶地址开始,如果一个int型(假设为32位系统)如果存放在偶地址开始的地方,那举一个读周期就可以读出,而如果存放在奇地址开始的地方,就可能会需要2个读周期,并对两次读出的结果的高低字节进行拼凑才能得到该int数据10. 在分布式系统中为什么要引入外部数据表示? 每一种体系结构的机器都有自己的内部数据表示方式,N种体系结构的机器互相交互时,数据转换成N2级 需要一种统一的外部数据表示:灵活性,独立于体系结构11. 外部数据表示X

18、DR的特点和作用是什么? 作用:为编程者提供了一种在异构机器间传递数据的方式,不需编程者书写转换硬件数据表示的过程。进行参数、结果的编解码,实现客户和服务器间参数和结果的传递12. OSF的分布式计算环境DCE包括哪些内容? 13. 请描述基于OSF DCE的应用开发过程。 14. 请描述OSF DCE中客户与服务器的绑定过程,用图示描述。 1. 网络计算环境具有哪些特点? 异构性:网上资源广泛地存在着差异的特性 ü差异包括不同的计算机硬件、操作系统、程序设计语言、网络协议和应用模式,需要普适的集成能力。 操作系统: Unix, Linux, MacOS, Windows,iOS,A

19、ndroid. 程序语言: C/C+/Objective-C/C#/Java/Perl/ 网络: 以太网, IP, USB, FireWire,WiFi,蓝牙, 802.11b, HomeRF § 自治性:网上资源局部自治、没有中央管理的特性 ü 局部自治系统间需要有效的协同能力,从而联合起来共同完成大视模的复杂应用。 § 成长性:网上资源不断膨胀和更迭的特性 ü 网上的资源及其相互关联关系不断发生变化,需要更灵活的管理机制,从而有效利用资源。 § 异构性严重阻碍了企业分布应用系统的开发。但是我们又不能在硬件、操作系统、网络协议、程序设计语言“

20、平台”的基础上达成一致 我们只能在高层寻求解决解决办法2. 网络中间件(Network middleware)是在什么样的背景下产生的?软件重用:应对软件复杂性的基本途径之一,使用网络中间件是软件重用的基本手段之一,可以实现从架构到代码的有效重用。网络中间件=可重用类库+架构模式+运行时基础设施 可重用类库:封装可重用的公共代码(代码重用) 架构模式:确定可重用组件间的交互关系(架构重用)在研究和实践过程中,人们逐渐认识到分布式应用不是单机应用的简单放大,不仅仅是把过程、对象、构件分散到多台机器上,需要各类公共服务实现分布协同,如交互模式、时间同步3. 网络中间件需要解决哪些核心问题? 4.

21、什么是网络中间件?网络中间件的作用是什么? 网络中间件是介于网络传输层不网络应用间的一种支持网络计算的支撑软件,其核心作用是为有效开发、部署和运行网络应用系统提供交互代理以及带共性的基础服务。它是分布式软件系统共性部份的沉淀,位于操作系统之上、应用系统之下的一层可重用软件基础设施 作用:中间件为分布式应用的开发、集成、运行、管理不维护提供基础设施和支持ü 支撑分布式软件架构,提供其所需的各类公共服务 如交互服务;协同服务。ü 可以被有选择性的使用、覆写或是扩展 ü 支持开发者快速、高质量地构造各类分布式软件系统5. 网络中间件都有哪些类型?请至少对3种类型的中间件

22、的含义和特点进行描述。过程中间件、事务管理中间件 、消息传递中间件、分布的对象中间件、面向服务中间件、数据访问中间件 面向消息中间件使用消息队列程序设计抽象即广义的操作系统邮箱来方便客户和服务器间异步消息的交换。面向对象中间件是基于面向对象程序设计范型和RPC结构的中间件,它提供了一种远程对象抽象机制,客户对远程对象中的方法激活就象客户在同一地址空间激活对象中的方法一样。这种类型的中间件通常支持封装、继承以及多态等机制。事务处理中间件支持运行在分布主机上的进程之间的事务处理。本意上,这种类型的中间件面向的是异构数据库系统之间的交互。其目标包括提供数据的完整性、高性能以及使用两阶段提交协议的可用

23、性。6,7,8题,面对过程,对象,消息中间件含义特点基于远程过程调用 (Remote Procedure Call, RPC) 的中间件,允许一个应用程序中的过程调用远程应用程序中的过程,就好像它们是本地调用一样,该中间件实现一个查找远程过程的链接机制并使调用方能够以透明方式使用这些过程。基于对象请求代理 (Object Request Broker, ORB) 的中间件,使应用程序的对象能够在异类网络之间分布和共享。面向消息的中间件或基于( Message-Oriented Middleware,MOM) 的中间件,使分布式应用程序可以通过发送和接收消息来进行通信和交换数据。所有这些模型都使

24、一个软件组件可以通过网络影响另一个组件的行为。它们的区别在于基于 RPC 和 ORB 的中间件会创建紧密耦合组件系统,而基于 MOM 的系统允许组件进行更松散的耦合。在基于 RPC 或 ORB 的系统中,一个过程调用另一个过程时,必须等待调用的过程返回才能执行其他操作。面向消息的中间件使用消息传送提供者来协调消息传送操作。MOM 系统的基本元素是客户端、消息和 MOM 提供者,后者包括 API 和管理工具。MOM 提供者使用不同的体系结构路由和传送消息:它可以使用集中式消息服务器,也可以将路由和传送功能分布在每个客户端上。9. 简述网络中间件的发展历程并描述各个阶段的技术特点,以及典型技术体系

25、/典型成果。10. 主流的分布对象中间件都有哪些?它们各种具有什么样的特点?11. 简述J2EE中间件的体系架构及其特点。12. 简述Micorsoft的COM/DCOM技术的特点。COM是个开放的组件标准,有很强的扩充和扩展能力。COM应用有如下特点:丰富的综合服务,包括事务、安全性、消息队列和数据存取,以支持最广泛的应用;组件间通过基于指针的API调用实现互操作,调用透明性好;对Windows依赖性强,其他操作系统的支持相对不足;供货商可使用多种开发语言开发,如VC、VB、C+ Builder等;定制应用软件和可重用组件的广泛用户基础;可靠的重用性,充分利用用户和开发人员的现有投资。DCOM是微软与其他业界厂商合作提出的一种分布组件对象模型,它是COM在分布计算方面的自然延续,为分布在网络不同节点的两个COM组件提供了互操作的基础结构。DCOM增强

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论