第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

懂遠程調(diào)用Rpc框架的同學來解答一下

懂遠程調(diào)用Rpc框架的同學來解答一下

慕碼人8056858 2019-02-28 14:10:20
看了一下rpc框架的作用,是可以實現(xiàn)遠程調(diào)用,可以基于http協(xié)議,也可以用別的協(xié)議。這里的遠程調(diào)用,指的應該是后端服務A和后端服務B互調(diào)吧(雖然有些地方會把調(diào)用方稱作客戶端,但其實還是服務端和服務端互調(diào))。那如果前端,就比如瀏覽器端,想通過post或者get方式去調(diào)后端的接口,也能稱之為RPC方式嗎?應該不是吧,充其量就是基于http的restful接口調(diào)用吧。而且前端(瀏覽器端)想去調(diào)后端接口,只能通過http協(xié)議,如果那些實現(xiàn)了別的協(xié)議的rpc框架,根本沒法處理http請求吧不知道我的理解對不對
查看完整描述

7 回答

?
慕標琳琳

TA貢獻1830條經(jīng)驗 獲得超9個贊

HTTP是通信協(xié)議,RPC是一種開發(fā)方式,他可以基于HTTP協(xié)議(比如gRPC),也可以基于其他協(xié)議,比如更基礎的TCP

通信協(xié)議的選擇只是RPC實現(xiàn)中的一小部分,更重要的一部分是編碼協(xié)議。比如json/xml屬于文本編碼,還有二進制字節(jié)編碼,比如protoful,thrift。http對比tcp,最詬病的就是多余的頭信息,而且還是使用的文本編碼,造成整個數(shù)據(jù)包體積過大。不過據(jù)說http2改進很多,修改為二進制編碼了,還支持多路復用,gRPC就是基于http2實現(xiàn)的。

至于restful,其實他本身是一套將資源對象化的設計標準,不過目前都作為技術實現(xiàn)再用,本身又分為嚴格的和非嚴格的。從目前上來說restful接口可以認為是一種基于http使用json編碼的RPC實現(xiàn),但還是本身restful是設計規(guī)范,更多的是約束資源的訪問獲取手段,不應當用于復雜的函數(shù)調(diào)用。

最后前后端,目前javascript也有json-RPC,ajax-RPC一類的更專注于函數(shù)調(diào)用的RPC實現(xiàn),可以基于HTTP,也可以基于websocket,如果目的是函數(shù)調(diào)用,你可以試用一下,會比使用restful舒服很多。

查看完整回答
反對 回復 2019-03-01
?
絕地無雙

TA貢獻1946條經(jīng)驗 獲得超4個贊

正在做的項目使用的是icegrid,最大的用處是將列如redis服務,es搜索服務,業(yè)務服務等等都是單獨獨立出來,解決程序間的耦合問題,只提供service層接口。所以我理解的rpc框架就是客服端與服務端的交互,而客戶端亦可稱為其他程序的服務端。因此感覺在web項目使用rpc框架并不是很適用。

查看完整回答
反對 回復 2019-03-01
?
吃雞游戲

TA貢獻1829條經(jīng)驗 獲得超7個贊

我的觀點是http與RPC在實現(xiàn)上沒有本質(zhì)的區(qū)別,但是,http和RPC的設計目標是不一樣的。

在實際中:

  1. http對外服務,RPC一般是供內(nèi)部調(diào)用
  2. http可以作為RPC的傳輸層
查看完整回答
反對 回復 2019-03-01
?
寶慕林4294392

TA貢獻2021條經(jīng)驗 獲得超8個贊

rpc是沒有post和get之分的.
你可以把多個rpc服務想象成一個很大的項目中的某些方法,比如 user相關方法,支付相關方法,rpc 只是把他們拆分開來而已,rpc直接可以互相調(diào)用,通過客戶端調(diào)用即可。
當然前端也可以直接調(diào)用rpc,但是這樣不好的一點就是各個端都不統(tǒng)一,可能做出來的東西bug比較多。
如果提供http服務,后端可以在http中調(diào)用相關rpc,把需要的聚合在一起,返回給前端,這樣就比較統(tǒng)一了。

查看完整回答
反對 回復 2019-03-01
?
侃侃無極

TA貢獻2051條經(jīng)驗 獲得超10個贊

看問題要看到問題的本質(zhì),為什么要有RPC,如果沒有RPC 會有什么樣的困難,其實你可以這么理解,RPC 是基于http or TCP 協(xié)議之上實現(xiàn)的一種封裝。 比如在 APP 開發(fā)中,以前沒有GRPC 我們需要手動去發(fā)送請求,解包,然后再使用,但是如果我們在APP 開發(fā)中如果用GRPC 協(xié)議,那么我們只管調(diào)用都可以啦。那么從開發(fā)角度來說,GRPC 是不是功能上幫你做啦一層封裝。后端也一樣,如果沒有GRPC 我們需要手動的去調(diào)用http 或者 tcp ,

查看完整回答
反對 回復 2019-03-01
?
慕俠2389804

TA貢獻1719條經(jīng)驗 獲得超6個贊

RPC遠程過程調(diào)用,本質(zhì)上來說并不是一種協(xié)議,而是一種架構方法。將業(yè)務進行分布式部署,但是邏輯上調(diào)用起來好像“調(diào)用本地方法”一樣。
http只是RPC的一種手段,thrift,grpc都是如此,不過后兩個是直接基于TCP協(xié)議開發(fā)的私有協(xié)議棧,傳輸效率高于http.

查看完整回答
反對 回復 2019-03-01
  • 7 回答
  • 0 關注
  • 666 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號