Litcius/Paper detail

In reference to RPC

Stephanie Wang, Benjamin Hindman, Ion Stoica

202115 citationsDOIOpen Access PDF

Abstract

RPC has been remarkably successful. Most distributed applications built today use an RPC runtime such as gRPC [3] or Apache Thrift [2]. The key behind RPC's success is the simple but powerful semantics of its programming model. In particular, RPC has no shared state: arguments and return values are passed by value between processes, meaning that they must be copied into the request or reply. Thus, arguments and return values are inherently immutable. These simple semantics facilitate highly efficient and reliable implementations, as no distributed coordination is required, while remaining useful for a general set of distributed applications. The generality of RPC also enables interoperability: any application that speaks RPC can communicate with another application that understands RPC.

Topics & Concepts

Computer scienceGeneralityInteroperabilitySemantics (computer science)Programming languageImplementationRemote procedure callSimple (philosophy)Distributed computingSet (abstract data type)Runtime systemOperational semanticsOperating systemKey (lock)EpistemologyPhilosophyPsychotherapistPsychologyDistributed and Parallel Computing SystemsScientific Computing and Data ManagementCloud Computing and Resource Management
In reference to RPC | Litcius