微服務架構之淺談RPC框架

RPC介紹

先官方的給大家介紹幾句:RPC是遠程過程調用(Remote Procedure Call)的縮寫形式。SAP系統RPC調用的原理其實很簡單,有一些類似於三層構架的C/S系統,第三方的客戶程序通過接口調用SAP內部的標準或自定義函數,獲得函數返回的數據進行處理後顯示或打印。

名詞解釋: 遠程過程調用 遠程過程 ,調用

名詞解釋: 遠程過程 消費者調用後臺提供者方法時,後臺的執行業務的過程.

定義:分佈式系統中系統之間的通信的方式稱之爲RPC,遠程過程調用。無需關注通信具體協議細節.可以利用RPC工具直接獲取遠程服務器數據。

通熟的講就是

  1. 本地調用某個函數方法;

  2. 本地機器的RPC框架把這個調用信息封裝起來(調用的函數、入參等),序列化(json、xml等)後,通過網絡傳輸發送給遠程服務器;

  3. 遠程服務器收到調用請求後,遠程機器的RPC框架反序列化獲得調用信息,並根據調用信息定位到實際要執行的方法,執行完這個方法後,序列化執行結果,通過網絡傳輸把執行結果發送回本地機器;

  4. 本地機器的RPC框架反序列化出執行結果,函數return這個結果。

服務調用端(本地機器):
在這裏插入圖片描述

服務提供端(遠程機器)
在這裏插入圖片描述

當然我這還有一種特通俗的講法

“老公,什麼是RPC呀,爲什麼你們程序員那麼多黑話!”,老婆還是一如既往的好奇。 “RPC,就是Remote Procedure
Call的簡稱呀,翻譯成中文就是遠程過程調用嘛”,我一邊看着書,一邊漫不經心的回答着。
“啥?你在說啥?誰不知道翻譯成中文是什麼意思?你個廢柴,快給我滾去洗碗!”
“我去。。。”,我如夢初醒,我對面坐着的可不是一個程序員,爲了不去洗碗,我瞬間調動起全部腦細胞,星辰大海在我腦中匯聚,靈感涌現…
.
“是這樣,遠程過程調用,自然是相對於本地過程調用來說的嘛。” “嗯哼,那先給老孃講講,本地過程調用是啥子?”
“本地過程調用,就好比你現在在家裏,你要想洗碗,那你直接把碗放進洗碗機,打開洗碗機開關就可以洗了。這就叫本地過程調用。”
“哎呦,我可不幹,那啥是遠程過程調用?”
“遠程嘛,那就是你現在不在家,跟姐妹們浪去了,突然發現碗還沒洗,打了個電話過來,叫我去洗碗,這就是遠程過程調用啦”,多麼通俗易懂的解釋,我真是天才!
.
“哦!我明白了”,說着,老婆開始收拾包包。 “你這是幹啥去哦”
“我?我要出門浪去呀,待會記得接收我的遠程調用哦,哦不,咱們要專業點,應該說,待會記得接收我的RPC哦!”


參考:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章