阅读以下关于分布式系统设计的说明,回答下列问题。 【说明】 某软件公司拟开发一套电信领域的分布式系统,该系统后台多个功能模块同时运行时的计算负载较大,且需要控制不同的特定电信硬件设备,由于硬件体积和I/O端口冲突等原因,这些设备需要分散安装在多

admin2013-01-20  30

问题 阅读以下关于分布式系统设计的说明,回答下列问题。
  【说明】
    某软件公司拟开发一套电信领域的分布式系统,该系统后台多个功能模块同时运行时的计算负载较大,且需要控制不同的特定电信硬件设备,由于硬件体积和I/O端口冲突等原因,这些设备需要分散安装在多个不同计算机系统中。该系统上线运行后将为企业最终用户提供7×24小时的不间断服务,而用户的单次接入服务往往需要后台多个模块共同协作完成。基于上述原因,该系统后台软件模块需分布在局域网内的多台计算机上。
    项目组决定基于ISO的开放分布进程(ODP)规范来进行系统架构的设计与开发,近期项目组召开了多次会议,对架构设计阶段的关键问题进行了讨论分析。
由于系统后台模块的分布式特性,后台分布式对象之间的互操作机制是需要考虑的核心问题之一。图2-2所示是当前分布式基础设施中支持分布式对象互操作的基本机制,请将相应部件名称填入图中(1)~(2);基于图2-2给出的结构,用300字以内文字说明完成一次分布式对象调用的详细步骤。
   

选项

答案(1)存根/桩 (2)框架 或 (1)代理 (2)存根 一次远程调用的过程如下: ①客户程序将调用请求发送给客户端桩,对于客户程序来说,桩就是服务程序在客户端的代理。 ②客户端桩负责将远程调用请求进行编组并发送给通信总线。 ③调用请求经通信总线传送到服务端框架。 ④服务端框架将调用请求解组并分派给真正的远程对象实现(服务程序)。 ⑤服务程序完成客户端的调用请求,将结果返同给服务端框架。 ⑥服务端框架将调用结果编组并发送给通信总线。 ⑦调用结果经通信总线传送到客户端桩。 ⑨客户端桩将调用结果解组并返回给客户程序,客户程序得到调用结果。

解析 本问题考查考生对现有分布式对象互操作机制的理解。
    各种互操作通信协议,包括RPC、IIOP、DCOM通信协议、JRMP、RMI/IIOP等,均可以帮助应用程序完成编组与解组等跨越网络通信的底层工作。这些高层通信协议尽管具体的实现细节不尽相同,但是在实现方式上与开发模式上均采用了RPC中相同的通信模型与类似的开发模式,它们采用的通信模型称为存根/框架(也称为桩/框架或代N/存根)结构。
    在该结构中,由客户端桩(Stub)替客户端完成与服务端程序交互的具体底层通信工作,客户程序中的远程对象引用实际上是对本地桩的引用;而服务端框架(Skeleton)负责替服务端完成与客户端交互的具体底层通信工作。由于客户端桩与服务端框架分别位于客户端与服务端程序的进程内,因此开发人员开发客户端与服务端程序时只需分别与本进程内的桩与框架构件交互即可实现与远端的交互,而负责底层通信的客户端桩与服务端框架在开发过程中自动生成而非由开发人员编写,从而为开发人员省去底层通信相关的开发工作。
    在存根/框架机制的支撑下,客户程序与分布式对象之间按照以下8个步骤完成一次远程调用:
    ①客户程序将调用请求发送给客户端桩,对于客户程序来说,桩就是服务程序在客户端的代理。
    ②客户端桩负责将远程调用请求进行编组并发送给通信总线。
    ③调用请求经通信总线传送到服务端框架。
    ④服务端框架将调用请求解组并分派给真正的远程对象实现(服务程序)。
    ⑤服务程序完成客户端的调用请求,将结果返回给服务端框架。
    ⑥服务端框架将调用结果编组并发送给通信总线。
    ⑦调用结果经通信总线传送到客户端桩。
    ⑧客户端桩将调用结果解组并返回给客户程序,客户程序得到调用结果。
转载请注明原文地址:https://kaotiyun.com/show/VNQZ777K
0

最新回复(0)