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