RPC-Remote Call Call

Protocolul RPC facilitează comunicarea între calculatoarele conectate în rețea

Un program pe un computer dintr-o rețea utilizează un apel de procedură la distanță pentru a face o solicitare a unui program pe alt computer din rețea fără a cunoaște detaliile rețelei. Protocolul RPC este un model de programare de rețea pentru comunicarea punct-la-punct în cadrul sau între aplicațiile software. Un RPC este, de asemenea, cunoscut ca un apel de subrutină sau un apel de funcție.

Cum funcționează RPC

În RPC, computerul de trimitere face o cerere sub forma unei proceduri, a unei funcții sau a unui apel de metodă. RPC traduce aceste apeluri în cereri și le trimite prin rețea spre destinația dorită. Destinatarul RPC procesează apoi cererea pe baza numelui procedurii și a listei de argumente și trimite un răspuns expeditorului după finalizare. Aplicațiile RPC implementează în mod obișnuit module de software numite "proxy" și "stubs" care intermediază apelurile de la distanță și le fac să apară la programator ca fiind aceleași ca și apelurile de procedură locală.

Aplicațiile de apelare RPC funcționează de obicei în mod sincron, așteptând ca procedura de la distanță să returneze un rezultat. Cu toate acestea, utilizarea firelor ușoare cu aceeași adresă înseamnă că pot apărea simultan mai multe RPC-uri. RPC include o logică de expirare a timpului pentru a rezolva eșecurile rețelei sau alte situații în care RPC-urile nu se întorc.

RPC Technologies

RPC a fost o tehnică comună de programare în lumea Unix încă din anii 1990. Protocolul RPC a fost implementat atât în ​​bibliotecile Open Computer Computing de la Open Software Foundation, cât și în bibliotecile Open Micro Computing Sun Microsystems, ambele implementate pe scară largă. Exemple mai recente de tehnologii RPC includ Microsoft DCOM, Java RMI și XML-RPC și SOAP.