分布式条件下的远程服务调用分布式系统是若干独立计算机的集合, 这些计算机对于用户来说就像是单个 相关的系统。 以面对服务的体系结构构建的分布式系统将应用程序功能作为服务 提供给终端用户程序或者是 其它服务。 从技术角度看, 服务是粗粒度的、 可重用 的 IT 资产,良好的接口定义(即:服务 契约令服务的外部访问接口与内部技 术实现相分离。 接口与实现的分离, 消除了服务请求者 和服务提供者间的紧密耦 合关系. 服务间的访问遵循标准的访问协议, 不论采纳何种技术, 只 要支持服务 描述、访问协议,即可被访问, 以此突破传统的分布式计算范型在通信、应用范 围 等方面的限制。 目前的比较流行的新型分布式服务计算模式有 Web 服务, Grid 服务, P2P 网络 服务、普适服务等。由于面对服务在动态更新和交互性等方面的 优势,以服务为实体来构建应用程序已然成为软件工程中的一个趋势. 远程服务调用的方法有两种 RPC 远程过程调用和 RMI 远程过程调用。RPC 远程过程调用 远程过程调用是一种广泛使用的分布式应用程序处理方法 。 一个应用程序 使用 RPC 来远 程执行一个位于不同地址空间里的过程 , 从效果上看和执行本地调 用相同 . 事实上 , 一个 RPC 应用分为两个部分 : Server 和 Client. Server 提供 远程过程 ; Client 向 Server 发出远程调用 . Server 和 Client 可以同处一台计 算机 , 也可以位于不同的计算机 , 甚至运行在不同的操作系统 之上 。 它们通过 网络进行通讯 , 相应的 Stub 和 Skeleton 支持提供数据转换和通讯服务 , 从而 屏蔽不同的操作系统和网络协议 . 远程过程调用 RPC 所提供的是基于过程的服务 访问 , RPC 要能正常工作 , 通常需要一些条件 , 如 Client 要有一些网络细节以 定位 Server ; 在 Client 发出 请求的同时 , 要求 Server 必须是活动等等 . 由于 Client 与 Server 是直接连接 , 没有中介体来处 理请求 , 因此具有一定的局限性。 RMI 远程方法调用RMI 应用程序包括两个独立的程序 : 服务器程序和客户机程序 . 服务器应 用程序创建多 个远程对象 , 使这些远程对象能够被引用 . 客户机程序从服务器 中得到一个或多个远程对象的 引用 , 然后调用远程对象的方法 。 RMI 使用 Stub 和 Skeleton 机制来实现服务器和客户机进行 通信和信息...