远程过程调用

✍ dations ◷ 2025-03-04 17:25:23 #进程间通信,中间件,应用层协议,远端程序呼叫

在分布式计算,远程过程调用(英语:Remote Procedure Call,缩写为 RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一个地址空间(通常为一个开放网络的一台计算机)的子程序,而程序员就像调用本地程序一样,无需额外地为这个交互作用编程(无需关注细节)。RPC是一种服务器-客户端(Client/Server)模式,经典实现是一个通过发送请求-接受回应进行信息交互的系统。

如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用,例:Java RMI。

RPC是一种进程间通信的模式,程序分布在不同的地址空间里。如果在同一主机里,RPC可以通过不同的虚拟地址空间(即便使用相同的物理地址)进行通讯,而在不同的主机间,则通过不同的物理地址进行交互。许多技术(常常是不兼容)都是基于这种概念而实现的。

有关RPC的想法至少可以追溯到1976年以“信使报”(Courier)的名义使用。RPC首次在UNIX平台上普及的执行工具程序是SUN公司的RPC(现在叫ONC RPC)。它被用作SUN的NFC的主要部件。ONC RPC今天仍在服务器上被广泛使用。另一个早期UNIX平台的工具是“阿波罗”计算机网络计算系统(NCS),它很快就用做OSF的分布计算环境(DCE)中的DCE/RPC的基础,并补充了DCOM。

远程过程调用是一个分布式计算的客户端-服务器(Client/Server)的例子,它简单而又广受欢迎。远程过程调用总是由客户端对服务器发出一个执行若干过程请求,并用客户端提供的参数。执行结果将返回给客户端。由于存在各式各样的变体和细节差异,对应地派生了各式远程过程调用协议,而且它们并不互相兼容。

为了允许不同的客户端均能访问服务器,许多标准化的 RPC 系统应运而生了。其中大部分采用接口描述语言(Interface Description Language,IDL),方便跨平台的远程过程调用。

相关

  • 异营生物异营生物(英语:heterotroph)指不能直接以无机物或有机物,必须摄取现成的养分来维持生存机能的生物。异营生物包括捕食、寄生和腐生三种。 异营性动物细胞需要的物质为水和矿物质
  • 文艺复兴文艺复兴是一场大致发生在14世纪至17世纪欧洲的文化运动,在中世纪晚期发源于意大利中部的佛罗伦萨,即意大利文艺复兴,后扩展至欧洲各国。其辞源为意大利语“Rinascimento”,由ri
  • 弥涅墨斯弥涅墨斯(希腊语:Μίμνερμος,英语:Mimnermus,鼎盛期在前630年-前600年),古希腊哀歌诗人。弥涅墨斯生活在一个战乱时期,当时小亚细亚的爱奥尼亚城邦正在抵抗兴起的吕底亚王
  • 美洲有袋总目美洲有袋类,即美洲有袋超目(学名:Ameridelphia),几乎所有生活在美洲的有袋类都属于这总目,只有微兽目除外。现时仍未确定美洲有袋类究竟是否单系群,即它们是否都有同一个祖先。其下
  • 乔瓦尼·莫尔加尼乔瓦尼·巴蒂什·莫尔加尼(Giovanni Battista Morgagni,1682年2月25日-1771年12月6日)意大利解剖学家和病理学家,他将病理解剖发展成为一门精确的科学,被誉为现代病理解剖学之父。
  • 木佬语木佬语是木佬人的语言。木佬人如今居住在贵州省东南的麻江、黄平、福泉、都匀、凯里等地,历史上在贵州西部的水城、而大方等地也有分布。人口有3万多(贵州地方政府官方认定为
  • 小豆岛小豆岛(日语:小豆島/しょうどしま Shōdoshima */?)是位于日本濑户内海播磨滩的岛,面积153.30平方公里,海岸线长126公里,为日本第19大、濑户内海内第2大岛。岛上有小豆岛町、土庄
  • 哈斯高娃哈斯高娃(1962年-),出生于内蒙古赤峰,中国大陆女演员。2001年获第八届中国电影金凤凰奖表演学会奖。
  • 温菲尔德·斯科特·汉考克美墨战争南北战争温菲尔德·斯科特·汉考克(英语:Winfield Scott Hancock,1824年2月14日-1886年2月9日),美国陆军职业军官,1880年美国总统大选的民主党总统候选人。他在陆军服役长
  • 欧洲保守派和改革主义者欧洲保守派和改革主义者(英语:European Conservatives and Reformists)是欧洲议会内的一个右翼疑欧保守主义党团,该党团反对欧洲联邦主义,持欧洲怀疑主义,并支持保守主义。党团成