RPC — Gọi thủ tục từ xa

Giao thức RPC tạo điều kiện giao tiếp giữa các máy tính nối mạng

Một chương trình trên một máy tính trên mạng sử dụng một cuộc gọi thủ tục từ xa để thực hiện một yêu cầu của một chương trình trên một máy tính khác trên mạng mà không biết chi tiết của mạng. Giao thức RPC là một mô hình lập trình mạng cho giao tiếp điểm-điểm trong hoặc giữa các ứng dụng phần mềm. Một RPC cũng được gọi là một cuộc gọi chương trình con hoặc một cuộc gọi hàm.

Cách RPC hoạt động

Trong RPC, máy gửi gửi yêu cầu dưới dạng một thủ tục, hàm hoặc gọi phương thức. RPC dịch các cuộc gọi này thành các yêu cầu và gửi chúng qua mạng đến đích dự định. Sau đó, người nhận RPC xử lý yêu cầu dựa trên tên thủ tục và danh sách đối số và gửi phản hồi tới người gửi khi hoàn tất. Các ứng dụng RPC thường thực hiện các mô-đun phần mềm được gọi là "proxy" và "sơ khai" để môi giới các cuộc gọi từ xa và làm cho chúng xuất hiện với lập trình viên giống như các cuộc gọi thủ tục cục bộ.

Các ứng dụng gọi RPC thường hoạt động đồng bộ, chờ thủ tục từ xa trả lại kết quả. Tuy nhiên, việc sử dụng các chuỗi nhẹ với cùng một địa chỉ có nghĩa là nhiều RPC có thể xảy ra đồng thời. RPC kết hợp logic hết thời gian để xử lý các lỗi mạng hoặc các tình huống khác trong đó RPC không trả về.

RPC Technologies

RPC là một kỹ thuật lập trình phổ biến trong thế giới Unix từ những năm 1990. Giao thức RPC được thực hiện trong cả môi trường máy tính phân tán của Open Software Foundation và các thư viện của Sun Microsystems Open Network Computing, cả hai đều được triển khai rộng rãi. Các ví dụ gần đây về công nghệ RPC bao gồm Microsoft DCOM, Java RMI và XML-RPC và SOAP.