RPC原理和通訊原理

2021-10-11 18:51:25 字數 1206 閱讀 6884

一次完整的

rpc呼叫流程(同步呼叫,非同步另說)如下:

1)服務消費方(client)呼叫以本地呼叫方式呼叫服務;2

)client stub

接收到呼叫後負責將方法、引數等組裝成能夠進行網路傳輸的訊息體; 3

)client stub

找到服務位址,並將訊息傳送到服務端; 4

)server stub

收到訊息後進行解碼; 5

)server stub

根據解碼結果呼叫本地的服務; 6

)本地服務執行並將結果返回給

server stub;

7)server stub

將返回結果打包成訊息並傳送至消費方; 8

)client stub

接收到訊息,並進行解碼;

9)服務消費方得到最終結果。

rpc框架的目標就是要

2~8這些步驟都封裝起來,這些細節對使用者來說是透明的,不可見的。

netty

是乙個非同步事件驅動的網路應用程式框架,

用於快速開發可維護的高效能協議伺服器和客戶端。它極大地簡化並簡化了

tcp和

udp套接字伺服器等網路程式設計。

一般稱為選擇器

,也可以翻譯為

多路復用器,

connect

(連線就緒)、

accept

(接受就緒)、

read

(讀就緒)、

write

(寫就緒)

netty

基本原理:

RPC原理簡介

什麼是rpc rpc remote procedure call 遠端過程呼叫,它是一種通過網路從遠端電腦程式上請求服務,而不需要了解底層網路技術的協議。rpc協議假定某些傳輸協議的存在,如tcp或udp,為通訊程式之間攜帶資訊資料。在osi網路通訊模型中,rpc跨越了傳輸層和應用層。rpc使得開發...

RPC工作原理

see also rpc 工作原理 每項 rpc 服務都會在登錄檔中為自己配置乙個通用的唯一識別符號 uuid 類似於全域性唯一識別符號 guid uuid 是一種常用識別符號,各項服務都有乙個唯一的 uuid,且在所有平台上通用。當一項 rpc 服務啟動時,它會獲得乙個可用的高階口,並以其 uui...

RPC實現原理

rpc remote procedure call 遠端過程呼叫,是乙個計算機通訊協議。該協議允許執行於一台計算機的程式呼叫另一台計算機的子程式,而程式設計師無需額外地為這個互動作用程式設計。兩個或多個應用程式都分布在不同的伺服器上,它們之間的呼叫都像是本地方法呼叫一樣,如下圖。阿里的dubbo g...