rpc即遠端服務呼叫
出現原因:隨著專案越來越大,訪問量越來越大,為了突破性能瓶頸,需要將專案拆分成多個部分,這樣比起傳統的專案都是本地記憶體呼叫,分布式的專案之間需要在網路間進行通訊
服務之間的遠端呼叫通常有兩種方式,即基於tcp的遠端呼叫和基於http的遠端呼叫
主要是服務提供方定義socket埠和提供的方法名稱已經需要的引數結構,服務呼叫方通過連線服務方的socket埠,進而呼叫相關方法,並且將需要通訊的資料作為引數傳遞,需要值得注意的是引數在傳遞的時候需要在服務呼叫端進行序列化然後在服務提供端進行反序列化,個人理解就行netty之間的通訊方式,就是一種基於tcp的遠端呼叫
對於http的rpc實現,本人覺得與現在的restful風格很類似,主要是在服務呼叫方通過標識請求,get,post然後通過url來定位到服務提供方提供的服務,資料通過xml或者json來傳輸,省去了tcp的序列化和反序列化
rpc是基於socket通訊,在協議層面處於較底層,優點是傳輸效率高,但是開發難度相對較高,而http處於較高層面,開發難度相對較小,不用維護socket埠和資料序列化相關問題,但是傳輸效率比起tcp來低了一些
RPC與HTTP的區別
1.rpc api和restful api 1 rpc面向過程 內部呼叫建議rpc rpc遠端呼叫不一定跨網路,同一臺主機的兩個程序直接也可以是rpc。rest就是一種rpc rpc可以通過http也可以直接走socket。選用http,是由於其更通用。2.rpc與http的不同特點 2.1 傳輸協...
RESTful還是基於HTTP的RPC實現
比如說,這個restful風格。從網上的資料大概知道,它首次出現在 2000 年 roy fielding 的博士 中,他是 http 規範的主要編寫者之一。對於http來作為通訊,我認為是乙個不錯的方案,因為目前大多語言的標準庫應該都是提供了http的支援,而且http這種無狀態的請求,也容易接受...
簡述RPC與HTTP對比
目錄前言 rpcrpc簡述 rest rpc服務框架 rpc與http的對比 如何選擇 何時選用restful 何時使用服務框架 微服務場景 本文針對 專案都會涉及的rpc服務和http服務 進行對比,作為總結沉澱。能力有限,不夠深入和全面,還請指點。rpc,remote procedure cal...