RPC遠程過程調用

RPC協議有助於聯網計算機之間的通信

網絡上的一台計算機上的程序使用遠程過程調用在網絡上的另一台計算機上請求程序,而無需知道網絡的詳細信息。 RPC協議是用於軟件應用程序內部或之間的點對點通信的網絡編程模型。 RPC也被稱為子程序調用或函數調用。

RPC如何工作

在RPC中,發送計算機以過程,函數或方法調用的形式發出請求。 RPC將這些調用轉換為請求,並通過網絡將它們發送到預定的目的地。 RPC收件人然後根據過程名稱和參數列表處理請求,並在完成時向發件人發送響應。 RPC應用程序通常實現名為“代理”和“存根”的軟件模塊,用於代理遠程調用,並使程序員看起來與本地過程調用相同。

RPC調用應用程序通常同步運行,等待遠程過程返回結果。 但是,使用具有相同地址的輕量級線程意味著可以同時發生多個RPC。 RPC集成了超時邏輯來處理網絡故障或RPC不返回的其他情況。

RPC技術

自20世紀90年代以來,RPC一直是Unix領域的常用編程技術。 RPC協議在開放軟件基金會的分佈式計算環境和Sun Microsystems開放網絡計算庫中都得到了實現,這兩個庫都被廣泛部署。 最近的RPC技術的例子包括Microsoft DCOM,Java RMI和XML-RPC和SOAP。