天天看點

終于懂了,RPC和OpenApi的差別

終于懂了,RPC和OpenApi的差別

🍁 作者:知識淺談,CSDN部落格專家,阿裡雲簽約部落客,InfoQ簽約部落客,華為雲雲享專家

📌 擅長領域:全棧工程師、爬蟲、ACM算法

💒 公衆号:知識淺談

終于懂了,RPC和OpenApi的差別

🤞拿下,拿下🤞

​首先RPC和OpenApi兩者都是通過調用其他服務的接口來擷取相應的值的,隻不過調用方式上有所差别。​

🎈RPC:遠端過程調用的簡寫,其調用遠端接口的方法類似于本地方法的調用。

終于懂了,RPC和OpenApi的差別

首先RPC包括四個結構,分别是client ,client stub, server,server stub.

client: 用戶端的調用。

client stub:用戶端代理,用戶端把資料傳給client stub,client stub對資料進行壓縮,然後傳遞個server club

server:服務端,提供被調用方法。

server stub:服務端代理,服務端代理接收到值之後,對值進行解壓縮,調用本地方法,并把結果壓縮傳回給client stub。

常見的有Dubbo,openfeign等。

如Openfeign中的使用,服務端提供被調用的方法,

用戶端定義一個接口,并把接口上定義服務端的資訊,好像是@Feiclient(裡邊是服務端的資訊),然後接口中分别定義不同的方法對應想逃調用的服務端的接口,方法上可以使用@GetMapping,@PostMapping 等注解和普通接口一樣,用戶端本地可以就像調用本地方法一樣調用。

🎈OpenApi:這個就比較好了解了,就是直接調用http的api接口

一般這種使用方法可以直接使用第三方工具如okhttp,httpclient等,直接使用工具類中的方法調用相應的服務。

🍚總結

繼續閱讀