国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

為什么有了HTTP,還需要RPC協(xié)議?

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2023-08-14 10:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為什么有了HTTP,還需要RPC協(xié)議呢?在進(jìn)行說明之前,首先我們需要了解什么是HTTP協(xié)議,什么是RPC協(xié)議。

0ea2595c-3a47-11ee-bbcf-dac502259ad0.png

什么是HTTP協(xié)議?

HTTP是一種廣泛使用的網(wǎng)絡(luò)傳輸協(xié)議,它定義了客戶端(如瀏覽器, 手機(jī)用戶APP等)和服務(wù)器(網(wǎng)站等提供服務(wù)的,服務(wù)端)之間的通信格式和通信方法,它是基于請求—響應(yīng)這樣一種通信模型,即服務(wù)端根據(jù)請求返回一個響應(yīng),在請求和響應(yīng)中,都包含了兩端(客戶端和服務(wù)端)之間進(jìn)行交互的一些信息,如方法、頭部、正文等。

0eb13288-3a47-11ee-bbcf-dac502259ad0.png

圖1 HTTP交互基本流程圖


HTTP具有很多優(yōu)點(diǎn),它支持多種數(shù)據(jù)格式和編碼方式,可以實(shí)現(xiàn)跨平臺和跨語言的通信,通信簡單、靈活、易于擴(kuò)展。但是同時它也有一些缺點(diǎn):

(1)HTTP是無狀態(tài)的,每次請求都需要重新建立連接,這會增加網(wǎng)絡(luò)開銷和延遲。

(2)數(shù)據(jù)傳輸是基于文本的,這會導(dǎo)致數(shù)據(jù)量較大,解析效率較低。

(3)安全性較差,因此容易受到中間人攻擊、重放攻擊等。

(4)語義較弱,HTTP只能表達(dá)基本的增刪改查操作,不能滿足復(fù)雜的業(yè)務(wù)邏輯。

0ec55308-3a47-11ee-bbcf-dac502259ad0.png

什么是RPC協(xié)議?


RPC即Remote Procedure Call(遠(yuǎn)程程序調(diào)用),它是一種遠(yuǎn)程過程調(diào)用協(xié)議,它允許客戶端像調(diào)用本地函數(shù)一樣調(diào)用遠(yuǎn)程服務(wù)器上的函數(shù)。

0ed30ad4-3a47-11ee-bbcf-dac502259ad0.png

圖2 RPC協(xié)議交互流程

RPC的優(yōu)點(diǎn)是高效、強(qiáng)大、易于使用,但是它也有一些缺點(diǎn),比如:

(1)與HTTP相反,RPC是有狀態(tài)的,需要維護(hù)客戶端和服務(wù)器之間的連接狀態(tài),這會增加系統(tǒng)的復(fù)雜度和資源消耗。

(2)RPC的數(shù)據(jù)傳輸是基于二進(jìn)制的,這會導(dǎo)致數(shù)據(jù)不易閱讀和調(diào)試。

(3)RPC的兼容性較差,不同的RPC框架之間可能存在協(xié)議和接口的不一致性。

(4)RPC的可擴(kuò)展性較差,難以支持動態(tài)服務(wù)發(fā)現(xiàn)和負(fù)載均衡等功能。

0efebf6c-3a47-11ee-bbcf-dac502259ad0.png

二者的選擇使用


基于TCP建立的HTTP和各類RPC協(xié)議,只是定義了不同消息格式的應(yīng)用層協(xié)議。HTTP協(xié)議是超文本傳輸協(xié)議,而RPC本身并不是一個具體的協(xié)議,而是一種調(diào)用方式。

0f1db37c-3a47-11ee-bbcf-dac502259ad0.png

雖然HTTP現(xiàn)在叫超文本協(xié)議,支持音頻視頻,但HTTP設(shè)計初主要是用做展示網(wǎng)頁文本,所以它傳輸?shù)膬?nèi)容以字符串為主,內(nèi)容存在非常多的冗余。而RPC協(xié)議定制化程度更高,可以采用體積更小的protobuf或其他序列化協(xié)議去保存結(jié)構(gòu)體數(shù)據(jù),同時也不需要像HTTP那樣考慮各種瀏覽器行為,性能更好。因此在公司內(nèi)部微服務(wù)中拋棄HTTP,轉(zhuǎn)而使用RPC協(xié)議。雖然后來HTTP得到了很大的改進(jìn),但由于很多公司內(nèi)部已經(jīng)用了多年的RPC協(xié)議,基于歷史原因,一般沒有選擇更換成HTTP。

在實(shí)際運(yùn)用中,不論是HTTP還是RPC,它們都有各自的優(yōu)缺點(diǎn),沒有絕對的好壞之分。針對不同的使用場景選擇合適的協(xié)議。比如:

(1)在微服務(wù)架構(gòu)中,服務(wù)之間需要頻繁地進(jìn)行內(nèi)部調(diào)用,RPC可以提供更高的性能和可靠性。

(2)在分布式計算中,需要將大量的計算任務(wù)分發(fā)到不同的節(jié)點(diǎn)上執(zhí)行,RPC可以實(shí)現(xiàn)更靈活的負(fù)載均衡和容錯機(jī)制。

(3)而在實(shí)時通信中,需要實(shí)現(xiàn)低延遲和高并發(fā)的數(shù)據(jù)交換,RPC可以支持多種傳輸協(xié)議和通信模式。

而假如你需要實(shí)現(xiàn)跨平臺和跨語言的通信,或者需要支持多種數(shù)據(jù)格式和編碼方式,或者需要利用現(xiàn)有的HTTP基礎(chǔ)設(shè)施和工具,可以選擇HTTP協(xié)議。

當(dāng)然這樣不是絕對固定的組合,也可以結(jié)合兩個協(xié)議來實(shí)現(xiàn)更好的網(wǎng)絡(luò),例如:

(1)我們可以在HTTP協(xié)議上封裝RPC協(xié)議,使得RPC請求可以通過HTTP代理或者網(wǎng)關(guān)來轉(zhuǎn)發(fā)和處理。

(2)可以在RPC協(xié)議上使用HTTP協(xié)議作為傳輸層,使得RPC請求可以利用HTTP的特性來實(shí)現(xiàn)緩存、壓縮、加密等功能。

所以總的來說,RPC的出現(xiàn)是為了應(yīng)對HTTP協(xié)議滿足不了的對性能有所要求的網(wǎng)絡(luò)場景。它們并不是互斥的,而是可以根據(jù)不同的場景和需求進(jìn)行選擇和組合的。

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

    關(guān)注

    18

    文章

    6391

    瀏覽量

    140037
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    618

    瀏覽量

    41080
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    8264

    瀏覽量

    94702
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    537

    瀏覽量

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

    關(guān)注

    0

    文章

    114

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    單片機(jī)中有FLASH為啥還需要EEROM?

    單片機(jī)里明明FLASH,為啥還要再塞個EEPROM?不少剛接觸嵌入式的小伙伴估計都有過這樣的疑惑:FLASH能存程序,容量大,讀取又快,干嘛還要加個讀寫慢、容量小的EEPROM?這不是多此一舉嘛。其實(shí),這倆兄弟各有所長,分工明確,就像你電腦里的固態(tài)硬盤和內(nèi)存條,誰也替不了誰。
    的頭像 發(fā)表于 03-05 13:39 ?20次閱讀
    單片機(jī)中有FLASH為啥<b class='flag-5'>還需要</b>EEROM?

    電子產(chǎn)品CE認(rèn)證還需要做RoHS嗎?2026年合規(guī)答疑

    很多電子企業(yè)出口歐盟時都會陷入一個核心困惑:“我的電子產(chǎn)品已經(jīng)做了CE認(rèn)證,還需要額外做RoHS嗎?”答案很明確:多數(shù)電子電氣類產(chǎn)品,CE認(rèn)證仍需滿足RoHS合規(guī),二者并非二選一,而是“包含與被
    的頭像 發(fā)表于 02-09 16:43 ?845次閱讀
    電子產(chǎn)品<b class='flag-5'>有</b>CE認(rèn)證<b class='flag-5'>還需要</b>做RoHS嗎?2026年合規(guī)答疑

    工業(yè)領(lǐng)域?yàn)槭裁磿玫?b class='flag-5'>HTTP協(xié)議

    工業(yè)領(lǐng)域使用HTTP協(xié)議主要源于其 通用性、易用性、擴(kuò)展性 以及與現(xiàn)代工業(yè)系統(tǒng)集成需求的契合,盡管工業(yè)環(huán)境對實(shí)時性、可靠性的要求較高,但HTTP在特定場景下仍能發(fā)揮關(guān)鍵作用。以下是具體原因分析
    的頭像 發(fā)表于 12-27 09:38 ?147次閱讀

    HTTP物聯(lián)網(wǎng)網(wǎng)關(guān)是什么?什么功能?

    HTTP物聯(lián)網(wǎng)網(wǎng)關(guān)是一種硬件或軟件設(shè)備,位于物聯(lián)網(wǎng)設(shè)備與云端服務(wù)之間,以HTTP協(xié)議為核心通信方式,負(fù)責(zé)數(shù)據(jù)的采集、處理、傳輸和管理。它作為物聯(lián)網(wǎng)架構(gòu)中的關(guān)鍵組件,解決不同設(shè)備間
    的頭像 發(fā)表于 12-24 11:33 ?319次閱讀
    <b class='flag-5'>HTTP</b>物聯(lián)網(wǎng)網(wǎng)關(guān)是什么?<b class='flag-5'>有</b>什么功能?

    HTTP通信網(wǎng)關(guān)是什么?什么功能?

    HTTP通信網(wǎng)關(guān)是連接不同網(wǎng)絡(luò)或協(xié)議的關(guān)鍵設(shè)備/服務(wù)器,在HTTP通信中扮演著協(xié)議轉(zhuǎn)換、安全加固、性能優(yōu)化等核心角色,其本質(zhì)是 實(shí)現(xiàn)不同協(xié)議
    的頭像 發(fā)表于 12-23 11:14 ?430次閱讀

    使用 HTTP 協(xié)議能否實(shí)現(xiàn) IAP 功能?

    使用 HTTP 協(xié)議,能否實(shí)現(xiàn) IAP 功能?
    發(fā)表于 12-23 06:35

    使用HTTP實(shí)現(xiàn)IAP的方法

    使用 HTTP 協(xié)議進(jìn)行固件升級沒有使用 TFTP 常見,但是在需要通過 Internet 進(jìn)行遠(yuǎn)程編程時,這種解決方案就顯得極為有用。這時,需要使用 TCP 傳輸
    發(fā)表于 12-16 06:18

    榮耀的星際穿越,中國的AI星海

    這么多AI產(chǎn)品,我們?yōu)槭裁?b class='flag-5'>還需要千問App
    的頭像 發(fā)表于 11-18 13:22 ?6266次閱讀
    榮耀的星際穿越,中國的AI星海

    東方的ChatGPT來了?這么多AI產(chǎn)品,我們?yōu)槭裁?b class='flag-5'>還需要千問App

    行業(yè)芯事行業(yè)資訊
    腦極體
    發(fā)布于 :2025年11月17日 19:06:36

    請問riscv中斷還需要軟件保存上下文和恢復(fù)嗎?

    以下是我拷貝的文檔里的說明,這個中斷處理還需要軟件來寫上下文保存和恢復(fù),在使用ARM核的單片機(jī)都不需要考慮這些的,使用過的小伙伴能解答嗎? 3.8. 進(jìn)出中斷的上下文保存和恢復(fù) RISC-V架構(gòu)
    發(fā)表于 10-20 09:56

    請問STM32新出的芯片USB還需要上拉電阻嗎?

    我記得F103的USB需要上拉個電阻,STM32新出的芯片USB還需要上拉電阻嗎?例如H5系列
    發(fā)表于 07-18 06:40

    HTTP協(xié)議在工業(yè)領(lǐng)域會用到嗎

    、控制器、工業(yè)機(jī)器人等)需要接入網(wǎng)絡(luò)以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控和管理。HTTP協(xié)議作為一種廣泛應(yīng)用的網(wǎng)絡(luò)協(xié)議,可以用于設(shè)備與工業(yè)互聯(lián)網(wǎng)平臺之間的通信。設(shè)備通過H
    的頭像 發(fā)表于 06-03 09:17 ?675次閱讀

    請問L9663 Transceiver使用Direct Interface(SYNCx&amp;DOUTx)模式時還需要通過SPI對其寄存器進(jìn)行配置嗎?

    L9663 Transceiver使用Direct Interface(SYNCx&DOUTx)模式時還需要通過SPI對其寄存器進(jìn)行配置嗎?
    發(fā)表于 03-13 07:38

    用了TOUCH編程還需要再用CUBE-IDE處理嗎?

    如題 用了TOUCH編程還需要再用CUBE-IDE處理嗎? TOUCH 僅僅只有在線版嗎
    發(fā)表于 03-10 06:19

    STM32和MCP2515通信,STM32這端還需要接CAN PHY嗎?

    最近在做CAN通信的相關(guān)項(xiàng)目,STM32G4負(fù)責(zé)接收,對端是一個MCP2510+TJA1040的組合, 想問下應(yīng)該如何接?STM32這端還需要接CAN PHY嗎?
    發(fā)表于 03-10 06:18