Remote procedure call

In distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure (subroutine) to execute in a different address space (commonly on another computer on a shared network), which is coded as if it were a normal (local) procedure call, without the programmer explicitly coding the details for the remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. This is a form of client–server interaction (caller is client, executor is server), typically implemented via a request–response message-passing system. In the object-oriented programming paradigm, RPCs are represented by remote method invocation (RMI). The RPC model implies a level of location transparency, namely that ca

Comment
enIn distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure (subroutine) to execute in a different address space (commonly on another computer on a shared network), which is coded as if it were a normal (local) procedure call, without the programmer explicitly coding the details for the remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. This is a form of client–server interaction (caller is client, executor is server), typically implemented via a request–response message-passing system. In the object-oriented programming paradigm, RPCs are represented by remote method invocation (RMI). The RPC model implies a level of location transparency, namely that ca
Has abstract
enIn distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure (subroutine) to execute in a different address space (commonly on another computer on a shared network), which is coded as if it were a normal (local) procedure call, without the programmer explicitly coding the details for the remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. This is a form of client–server interaction (caller is client, executor is server), typically implemented via a request–response message-passing system. In the object-oriented programming paradigm, RPCs are represented by remote method invocation (RMI). The RPC model implies a level of location transparency, namely that calling procedures are largely the same whether they are local or remote, but usually, they are not identical, so local calls can be distinguished from remote calls. Remote calls are usually orders of magnitude slower and less reliable than local calls, so distinguishing them is important. RPCs are a form of inter-process communication (IPC), in that different processes have different address spaces: if on the same host machine, they have distinct virtual address spaces, even though the physical address space is the same; while if they are on different hosts, the physical address space is different. Many different (often incompatible) technologies have been used to implement the concept.
Hypernym
Call
Is primary topic of
Remote procedure call
Label
enRemote procedure call
Link from a Wikipage to an external page
web.archive.org/web/20030404113118/http:/techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi%3Fcoll=0650&db=bks&srch=&fname=/SGI_Developer/IRIX_NetPG/sgi_html/ch04.html
golang.org/
golang.org/pkg/net/rpc/
www.cs.cf.ac.uk/Dave/C/node33.html
Link from a Wikipage to another Wikipage
.NET Framework
.NET Remoting
9P (protocol)
Action Message Format
Address space
Adobe Flex
Apache Avro
Apache Thrift
ARPANET
Brian Randell
Bruce Jay Nelson
Category:Distributed computing
Category:Inter-process communication
Category:Middleware
Category:Remote procedure call
Cedar (programming environment)
Class skeleton
Class stub
Common Object Request Broker Architecture
CORBA
D-Bus
Distributed Component Object Model
Distributed computing
Distributed object middleware
Distributed Ruby
Elixir (programming language)
Erlang (programming language)
Etch (protocol)
External Data Representation
Fragmented object
Front and back ends
Google Web Toolkit
GRPC
HTTP
Idempotent
Interface description language
Internet Communications Engine
Inter-process communication
Java (programming language)
Java remote method invocation
Java Remote Method Invocation
JSON
JSON-RPC
JSON-WSP
Libevent
Local Procedure Call
Marshalling (computer science)
Microsoft RPC
Modula-3
Network Data Representation
Network File System
Newcastle Connection
Object-oriented programming
ODBC
Open Network Computing Remote Procedure Call
Operating system
Per Brinch Hansen
Protocol Buffers
Publish–subscribe pattern
RC 4000 Multiprogramming System
Remote evaluation
Remote Function Call
Request–response
Resource-oriented architecture
RPC
RPyC
SOAP
SORCER
Stub (distributed computing)
Subroutine
Sun Microsystems
Unix
Unmarshalling
Web Application Messaging Protocol
Windows Communication Foundation
Xerox
Xerox PARC
XML
XMLHttpRequest
XML-RPC
ZeroC
SameAs
4oeAC
Chamada de procedimento remoto
Chiamata di procedura remota
Etäproseduurikutsu
Llamada a procedimiento remoto
m.06kl5
Panggilan tatacara jauh
Q62270
Remote procedure call
Remote procedure call
Remote procedure call
Remote procedure call
Remote procedure call
Remote procedure call
Remote procedure call
Remote procedure call
Remote Procedure Call
Remote Procedure Call
Remote Procedure Call
RPC
RPC
Uzaktan yordam çağrısı
Zdalne wywołanie procedury
Виклик віддалених процедур
Удалённый вызов процедур
فراخوانی رویه‌ای دوردست
نداء الإجراء البعيد
遠程過程調用
遠隔手続き呼出し
원격 프로시저 호출
Subject
Category:Distributed computing
Category:Inter-process communication
Category:Middleware
Category:Remote procedure call
WasDerivedFrom
Remote procedure call?oldid=1122759694&ns=0
WikiPageLength
14827
Wikipage page ID
26346
Wikipage revision ID
1122759694
WikiPageUsesTemplate
Template:IETF RFC
Template:More citations needed section
Template:Reflist
Template:Short description