RPC 和 RESTful

之前對RPC不是很了解,查了很多資料,解釋RPC時說了一堆原理和使用方法,但是沒有很簡練的說出RPC到底是什么,以此記錄一下,如有問題請指出。

RPC 從字面理解是面向過程調(diào)用,什么叫過程調(diào)用,其實就是調(diào)用遠(yuǎn)程服務(wù)就像是本地方法調(diào)用,而不是像RESTFul一樣需要在項目里些對應(yīng)服務(wù)的地址和http method(get,put,delete,post),就像調(diào)用本地方法一樣~

如果實現(xiàn)調(diào)用從serviceA調(diào)用serviceB的一個RPC調(diào)用呢?
RPC只是一個編程模型,不是一個標(biāo)準(zhǔn),所以實現(xiàn)隨便你,只要開發(fā)者不需要關(guān)心各種類似RESTFul的細(xì)枝末節(jié)的東西就行。
比如,Apache Thrift就是一個RPC調(diào)用框架,thrift會給你一個文件,你只需要通過IDE把文件導(dǎo)入到項目里,那么直接就可以調(diào)用方法了,而不用做RESTFul調(diào)用的各種配置(比如你用的spring feign client,需要看serviceB是那種http method,url是啥等等)。


image.png

至于RPC比ESTFul的優(yōu)點,就是:
RPC其實是可以基于底層二級制的方式傳播數(shù)據(jù),而不像RESTFul是通過http的方式傳播數(shù)據(jù),http有各種東西,比如頭信息里的各種配置。

所以RPC調(diào)用效率會更高。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容