首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
虽然不同的分布式软件体系结构采用的具体实现方式不尽相同,但它们都支持客户端透明地访问分布式对象,即客户端可以像访问本地对象一样访问分布式对象。试用 200字以内文字,说明实现这种透明性的基本原理。 由于应用的具体需求千差万别,再好的分布式软件体系结构也不
虽然不同的分布式软件体系结构采用的具体实现方式不尽相同,但它们都支持客户端透明地访问分布式对象,即客户端可以像访问本地对象一样访问分布式对象。试用 200字以内文字,说明实现这种透明性的基本原理。 由于应用的具体需求千差万别,再好的分布式软件体系结构也不
admin
2007-10-08
114
问题
虽然不同的分布式软件体系结构采用的具体实现方式不尽相同,但它们都支持客户端透明地访问分布式对象,即客户端可以像访问本地对象一样访问分布式对象。试用 200字以内文字,说明实现这种透明性的基本原理。
由于应用的具体需求千差万别,再好的分布式软件体系结构也不可能适应所有的应用系统,有时不得不放弃现有的分布式软件体系结构的支持,自己利用底层的通信协议来实现各子系统之间的交互。试用200自以内文字,简要说明用底层通信协议实现各子系统之间的交互时要解决的主要问题。
选项
答案
要解决的主要问题如下。 (1)异类系统间交互的兼容性:例如,处理不同操作系统的字节顺序、数据长度、数据表示方式等。 (2)通信的可靠性问题:例如,出错处理、重传机制等。 (3)通信的安全性问题。 (4)接口的可用性、易用性问题。 说明直接利用底层通信协议,可以解决哪些基于成熟的分布式软件体系结构不能解决的问题。 第二步:根据问题要点,仔细阅读正文,找出相应段落 (1)现在主流的分布式软件体系结构(如EJB,CORBA,DCOM/COM+)都融合了面向对象技术,对分布式对象提供了很好的支持,可以利用这些体系结构支持分布式对象访问的通信机制(如RMI/IIOP,ORB,ORPC等)来实现各子系统之间的交互,其优点是实现相对简单且比较可靠。 (2)利用底层通信协议(如TCP/IP)实现各子系统之间的交互,其优点是通信效率高且可控性好。 (3)透明访问:客户端可以像访问本地对象一样访问分布式对象。 (4)再好的分布式软件体系结构也不可能适应所有的应用系统,有时不得不放弃现有的分布式软件体系结构的支持,自己利用底层的通信协议来实现各子系统之间的交互。 第三步,分析试题的内容,构思答案的要点
解析
[问题1]
在分布式系统中,不同的组件可能用不同的程序语言来实现,且这些组件可能运行在不同类型的处理器上。数据模型、信息表示法以及通信协议可能都不一样。因此,分布式系统就需要某种软件来管理这些不同的部分,确保它们能够通信和交换数据。中间件就是这样一种软件,它位于系统的不同的分布式组件之间。
中间件是一种通用软件,通常不是由应用开发人员编写的,而是买现成的。中间件的例子有负责数据库通信管理的软件、事务管理器、数据转换器和通信控制器等,最重要的一种中间件就是分布式系统框架。
在分布式系统的客户机/服务器模型中,客户机必须要知道服务器的存在及它们能提供的服务,还要知道如何才能使用这些服务器上的服务。这个模型对许多类型的应用来说能工作得很好。然而,它对系统设计者是一个很大的限制,因为设计必须决定服务在哪里提供,而且还得规划系统的伸缩性,当有较多的客户机增加到系统中时,就得考虑如何将服务器的负载分布开来。
更通用的分布式系统的设计方法是去掉客户机与服务器之间的差别,用分布式对象体系结构来设计系统。在一个分布式对象体系结构中,其基本系统组件是对象,它能够提供一组服务,对外给出这些服务的接口。其他对象调用这些服务,对象之间并不存在客户机与服务器的界限,接受服务者即扮演客户机的角色,提供服务者就是服务器。
对象可能分布在网络的多台计算机上,它们通过中间件相互通信。就像硬件总线允许不同的卡插于其上以支持硬件设备之间的通信一样,这个中间件被看成软件总线。它提供一组服务,允许对象之间通信和往系统上添加和移走对象。这个中间件称作对象请求代理。它的作用是在对象之间提供一个无缝接口。
主要的分布式对象体系结构框架有OMG定义的CORBA(通用对象请求代理体系结构),Microsoft开发的DCOM(分布式组件对象模型),SUN开发的EJB(企业级Java Bean)3种。它们在分布式对象处理方面的原理基本一样,只是具体实现上有所区别。下面以最通用的CORBA为例做简单的介绍。
CORBA对象模型也将对象看成是对属性和服务的封装,这对对象而言是很常见的,不同之处在于CORBA对象一定有一个独立的接口定义,它定义了对象的公共属性和操作。CORBA对象接口使用标准的、语言无关的接口描述语言(IDL)。如果一个对象想用另一个对象提供的服务,那么它就通过IDL接口访问这些服务。CORBA对象有一个独立的标识,称作互操作对象引用(IOR),当一个对象请求另外一个对象上的服务时使用IOR。
对象请求代理(ORB)知道正在请求服务的对象以及接口,ORB处理对象之间的通信。相互通信的对象没有必要知道对方的位置,也没有必要知道关于实现的具体细节。由于IDI。接口隔离了ORB和对象,因此可以以一种完全透明的方式改变对象的实现。对象位置可以在请求期间改变,对系统中其他对象来讲这也是透明的。
调用对象有一个相关联的IDL占位模块(stub,又称桩模块),定义了提供服务的那个对象的接口。当需要一个服务时,调用对象的实现者就将调用嵌入到实现对象的相应占位模块中去。提供服务的对象有一个相关联的IDL框架,它连接接口和服务的实现。当服务通过接口被调用时,IDL框架将它翻译成对服务的调用,而不管服务是用什么语言实现的。
对象请求代理不总是被实现成单独的过程,而是连接对象实现的框架。因此,在分布式系统中,每台运行着分布对象的计算机都有自己的对象请求代理,它将处理局部对象的所有请求。在请求调用的是远程对象提供的服务时,就需要在不同的ORB之间进行通信。实现ORB之间的通信有2种实现方式:一是提供所有ORB对全部IDL接口定义的访问,二是实现OMG标准的通用ORB间通信协议(GIOP),IIOP则是基于TCP/IP的 GIOP,如图6-5所示。
[问题2]
基于成熟的分布式软件体系结构来构建整个系统,可以利用这些体系结构支持分布式对象访问的通信机制来实现各子系统之间的交互,因为其通信机制、数据接口等已成标准,程序员只需直接使用就可以了,所以这种方法的优点是实现相对简单且比较可靠。
如果利用底层通信协议实现各子系统之间的交互,则各子系统之间的通信机制、数据接口等都需要开发人员自己拟订和确定,这是该方法要解决的主要问题。
转载请注明原文地址:https://kaotiyun.com/show/leQZ777K
本试题收录于:
系统分析师下午案例分析考试题库软考高级分类
0
系统分析师下午案例分析考试
软考高级
相关试题推荐
求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。
ASP.NET能在那些系统中运行?
概述.NET里对remoting和webservice两项技术的理解和实际中的应用。
定义Fibonacci数列如下:输入n,用最快的方法求该数列的第n项。
下面是一个数组类的声明与实现。请分析这个类有什么问题,并针对存在的问题提出几种解决方案。templateclassArray{public:Array(unsignedarraySize):data(0),size(arraySize)
在用户管理组administrators中添加本地用户“sy”。
设置TCP/IP属性由DHCP服务器负责分配IP地址。
设置新邮件背景颜色,邮件内容是:“晚上有party”。设置新邮件的背景颜色为“红色”。
设置CuteFTP在启动时加载站点管理器,在连接不通的情况下重连接的次数不超过8次。
将C盘下"华文字库"文件夹中的字体添加到系统字体库中。
随机试题
患者,女,63岁。右上腹隐痛半年伴有进行性黄疸、陶土样便1个月余。提示:查体:巩膜重度黄染,腹部稍膨隆。腹软,上腹部压痛明显,肠鸣音减弱。应考虑施行的影像检查项目包括1.腹部平片2.消化道钡剂造影3.腹部B超4.腹部CT5.ERCP6.M
全口义齿戴入后,若出现疼痛,可能的原因是
下列属于不稳定骨折的是
甲公司与A国乙公司在我国境内设立一合作企业,双方经协商签订的合同中明确约定如双方发生争议则适用第三国B国的法律。现双方已发生争议,法院在审理该案时的下列哪些做法是正确的?
甲公司2007年4月1日与乙公司原投资者A签订协议,甲公司以存货和固定资产换取A持有的乙公司股权,2007年7月1日购买日乙公司可辨认净资产公允价值为1000万元,甲公司取得70%的份额。甲公司投出存货的公允价值为500万元,增值税85万元,账面成本400
牡丹:花卉:观赏
Americanwomenexperienceagreat【C1】______oflifestyles.A"typical"Americanwomanmaybesingle.Shemayalsobedivorcedor
WhatiswrongwiththeAmericandiet?
The______ofthespringwaterattractsalotofvisitorsfromalloverthecountry.
A、Makeaschedulefortheirdecoration.B、Geteverythingneededpurchasedinonetrip.C、Betheweekendfightersthroughpurchas
最新回复
(
0
)