亚洲av成人精品日韩一区,97久久久精品综合88久久,玩弄japan白嫩少妇hd,亚洲av片不卡无码久久,玩弄人妻少妇500系列

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是RPC?為什么需要RPC?

阿銘linux ? 來源:lp ? 2019-04-16 12:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是RPC

RPC 全稱 Remote Procedure Call——遠程過程調(diào)用。在學校學編程,我們寫一個函數(shù)都是在本地調(diào)用就行了。但是在互聯(lián)網(wǎng)公司,服務(wù)都是部署在不同服務(wù)器上的分布式系統(tǒng),如何調(diào)用呢?

RPC技術(shù)簡單說就是為了解決遠程調(diào)用服務(wù)的一種技術(shù),使得調(diào)用者像調(diào)用本地服務(wù)一樣方便透明。

下圖是客戶端調(diào)用遠端服務(wù)的過程:

1)客戶端client發(fā)起服務(wù)調(diào)用請求。

2)client stub 可以理解成一個代理,會將調(diào)用方法、參數(shù)按照一定格式進行封裝,通過服務(wù)提供的地址,發(fā)起網(wǎng)絡(luò)請求。

3)消息通過網(wǎng)絡(luò)傳輸?shù)椒?wù)端。

4)server stub接受來自socket的消息

5)server stub將消息進行解包、告訴服務(wù)端調(diào)用的哪個服務(wù),參數(shù)是什么

6)結(jié)果返回給server stub

7)sever stub把結(jié)果進行打包交給socket

8)socket通過網(wǎng)絡(luò)傳輸消息

9)client slub 從socket拿到消息

10)client stub解包消息將結(jié)果返回給client。

一個RPC框架就是把步驟2到9都封裝起來。

為什么需要RPC

1、首先要明確一點:RPC可以用HTTP協(xié)議實現(xiàn),并且用HTTP是建立在 TCP 之上最廣泛使用的 RPC,但是互聯(lián)網(wǎng)公司往往用自己的私有協(xié)議,比如鵝廠的JCE協(xié)議,私有協(xié)議不具備通用性為什么還要用呢?因為相比于HTTP協(xié)議,RPC采用二進制字節(jié)碼傳輸,更加高效也更加安全。

2、現(xiàn)在業(yè)界提倡“微服務(wù)“的概念,而服務(wù)之間通信目前有兩種方式,RPC就是其中一種。RPC可以保證不同服務(wù)之間的互相調(diào)用。即使是跨語言跨平臺也不是問題,讓構(gòu)建分布式系統(tǒng)更加容易。

3、RPC框架都會有服務(wù)降級、流量控制的功能,保證服務(wù)的高可用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 互聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    55

    文章

    11249

    瀏覽量

    106383
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    13

    文章

    9793

    瀏覽量

    87945
  • RPC
    RPC
    +關(guān)注

    關(guān)注

    0

    文章

    111

    瀏覽量

    11883

原文標題:RPC協(xié)議了解一下

文章出處:【微信號:aming_linux,微信公眾號:阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    HarmonyOS跨進程通信—IPC與RPC通信開發(fā)

    使用Binder驅(qū)動,用于設(shè)備內(nèi)的跨進程通信,后者使用軟總線驅(qū)動,用于跨設(shè)備跨進程通信。需要跨進程通信的原因是因為每個進程都有自己獨立的資源和內(nèi)存空間,其他進程不能隨意訪問不同進程的內(nèi)存和資源,IPC/RPC
    的頭像 發(fā)表于 02-02 17:47 ?1756次閱讀
    HarmonyOS跨進程通信—IPC與<b class='flag-5'>RPC</b>通信開發(fā)

    TSMaster RPC 基礎(chǔ)入門:編程指導(dǎo)和使用說明

    介紹RPC模塊前,我們先淺聊一下RPC的相關(guān)說明,以及在什么樣的情況下需要了解本文。1.RPC說明遠程過程調(diào)用(RPC,RemoteProc
    的頭像 發(fā)表于 07-13 08:21 ?1388次閱讀
    TSMaster <b class='flag-5'>RPC</b> 基礎(chǔ)入門:編程指導(dǎo)和使用說明

    RPC的結(jié)構(gòu)原理是什么?

    遠程過程調(diào)用(RPC)是一個協(xié)議,程序可以使用這個協(xié)議請求網(wǎng)絡(luò)中另一臺計算機上某程序的服務(wù)而不需知道網(wǎng)絡(luò)細節(jié)。(過程調(diào)用有時也稱作函數(shù)調(diào)用,或子例行程序調(diào)用。)RPC使用client/server模型。請求程序是client,而服務(wù)提供程序則為server。
    發(fā)表于 10-12 10:43

    直連設(shè)備怎么rpc雙向控制

    Thing***oard提供非常強大的可視化部件,除了圖表、地圖車聯(lián)網(wǎng)外,還有控制部件,通過mqtt rpc可以輕松實現(xiàn)平臺 -- 設(shè)備端 設(shè)備到平臺雙向數(shù)據(jù)傳輸及控制。Thingboard 連接
    發(fā)表于 07-12 06:55

    RPC是什么

    RPC是什么?RabbitMQ又是什么?
    發(fā)表于 10-08 09:24

    什么是RPC

    什么是RPC   英文原義:Remote Procedure Call Protocol 中文釋義:(RFC-1831)遠過程調(diào)用協(xié)議 注  解:一種通過
    發(fā)表于 02-23 11:48 ?980次閱讀

    Restful 和 RPC 是什么關(guān)系與區(qū)別

    本文詳細介紹了關(guān)于Restful 和 RPC的關(guān)系與區(qū)別,詳細分析請看下文。
    的頭像 發(fā)表于 02-07 15:35 ?3.9w次閱讀
    Restful 和 <b class='flag-5'>RPC</b> 是什么關(guān)系與區(qū)別

    為什么需要RPC接口

    論復(fù)雜度,RPC框架肯定是高于簡單的HTTP接口的。但毋庸置疑,HTTP接口由于受限于HTTP協(xié)議,需要帶HTTP請求頭,導(dǎo)致傳輸起來效率或者說安全性不如RPC
    發(fā)表于 07-13 17:46 ?2707次閱讀

    HTTP和RPC

    TCP是傳輸層的協(xié)議,而基于TCP造出來的HTTP和各類RPC協(xié)議,它們都只是定義了不同消息格式的應(yīng)用層協(xié)議而已。
    的頭像 發(fā)表于 11-23 08:54 ?1201次閱讀
    HTTP和<b class='flag-5'>RPC</b>

    HTTP和RPC的區(qū)別與聯(lián)系

    HTTP和RPC的相同點:底層通訊都是基于socket,都可以實現(xiàn)遠程調(diào)用,都可以實現(xiàn)服務(wù)調(diào)用服務(wù)。
    的頭像 發(fā)表于 11-23 08:55 ?2173次閱讀
    HTTP和<b class='flag-5'>RPC</b>的區(qū)別與聯(lián)系

    RPC接口和HTTP接口的區(qū)別與聯(lián)系

    ? HTTP服務(wù) RPC接口和HTTP接口的區(qū)別與聯(lián)系 參考文獻 ? HTTP接口和RPC接口都是生產(chǎn)上常用的接口,顧名思義,HTTP接口使用基于HTTP協(xié)議的URL傳參調(diào)用,而RPC接口則
    的頭像 發(fā)表于 06-17 14:54 ?2247次閱讀
    <b class='flag-5'>RPC</b>接口和HTTP接口的區(qū)別與聯(lián)系

    什么是HTTP協(xié)議?什么是RPC協(xié)議?二者如何選擇使用?

    為什么有了HTTP,還需要RPC協(xié)議呢?在進行說明之前,首先我們需要了解什么是HTTP協(xié)議,什么是RPC協(xié)議。
    的頭像 發(fā)表于 08-11 09:25 ?3000次閱讀
    什么是HTTP協(xié)議?什么是<b class='flag-5'>RPC</b>協(xié)議?二者如何選擇使用?

    RPC 和 REST 區(qū)別是什么

    01. 既 REST ,何 RPC ? 在 OpenStack 里的進程間通信方式主要有兩種,一種是基于HTTP協(xié)議的RESTFul API方式,另一種則是RPC調(diào)用。 那么這兩種方式在應(yīng)用場景上有
    的頭像 發(fā)表于 11-02 10:40 ?3676次閱讀
    <b class='flag-5'>RPC</b> 和 REST 區(qū)別是什么

    鴻蒙開發(fā)通信與連接:ohos.rpc RPC通信

    本模塊提供進程間通信能力,包括設(shè)備內(nèi)的進程間通信(IPC)和設(shè)備間的進程間通信(RPC),前者基于Binder驅(qū)動,后者基于軟總線驅(qū)動。
    的頭像 發(fā)表于 06-21 09:40 ?1003次閱讀
    鴻蒙開發(fā)通信與連接:ohos.<b class='flag-5'>rpc</b> <b class='flag-5'>RPC</b>通信

    Dubbo源碼淺析(一)—RPC框架與Dubbo

    一、什么是RPC 1.1 RPC概念 RPC,Remote Procedure Call 即遠程過程調(diào)用,與之相對的是本地服務(wù)調(diào)用,即LPC(Local Procedure Call)。本地服務(wù)調(diào)用
    的頭像 發(fā)表于 08-16 15:18 ?1155次閱讀
    Dubbo源碼淺析(一)—<b class='flag-5'>RPC</b>框架與Dubbo