Vzdálené volání procedur RPC

Protokol RPC usnadňuje komunikaci mezi síťovými počítači

Program na jednom počítači v síti používá vzdálený volání procedur pro vyžádání programu na jiném počítači v síti bez znalosti podrobností o síti. Protokol RPC je síťový programovací model pro komunikaci bod-bod v rámci nebo mezi softwarovými aplikacemi. RPC je také znám jako volání podprogramu nebo volání funkce.

Jak RPC funguje

V RPC odesílající počítač podává žádost ve formě volání procedury, funkce nebo metody. Služba RPC převede tyto volání do požadavků a pošle je po síti do určeného cíle. Příjemce RPC potom zpracuje požadavek na základě názvu procedury a seznamu argumentů a odešle odpověď na odesílatele po dokončení. Aplikace RPC typicky implementují softwarové moduly nazvané "proxy" a "stubs", které zprostředkovávají vzdálené volání a dávají je programátorovi podobu volání místních procedur.

Aplikace volání RPC obvykle pracují synchronně a čekají na to, že vzdálený postup vrátí výsledek. Používání lehkých závitů se stejnou adresou však znamená, že se mohou objevit současně více RPC. RPC obsahuje logiku vypršení časového limitu pro vyřešení selhání sítě nebo jiných situací, v nichž se RPC nevrátí.

RPC Technologies

RPC je běžná programovací technika ve světě Unix od devadesátých let. Protokol RPC byl implementován jak v distribuovaném prostředí výpočetního prostředí Open Source Foundation, tak v knihovnách Open Microsystems Computing společnosti Sun Microsystems, které byly široce nasazeny. Mezi novější příklady technologií RPC patří Microsoft DCOM, Java RMI a XML-RPC a SOAP.