gRPC
Google遠程過程調(diào)用(Google Remote Procedure Call,gRPC)協(xié)議是谷歌發(fā)布的高性能、通用的開源RPC軟件框架。gRPC提供了多種編程語言,同時gRPC也是對網(wǎng)絡設備進行配置和管理的一種方法。
gRPC vs REST
REST(Representational State Transfer)表征狀態(tài)轉移,是一種軟件架構風格,同樣為管理和配置網(wǎng)絡設備提供了一種API接口設計的方法。gRPC與REST兩者的主要差異如下:
幾乎所有的瀏覽器都支持RSET,而支持gRPC的瀏覽器非常有限。這是REST相對于gRPC的主要優(yōu)勢。
REST遵循基于HTTP 1.1的請求-響應通信模型,而gRPC遵循基于HTTP 2.0的客戶端-響應通信模型。HTTP 2.0在速度上有著絕對的優(yōu)勢。
REST使用JSON或XML編碼格式承載數(shù)據(jù),而gRPC默認使用ProtoBuf編碼格式承載數(shù)據(jù)。JSON或XML編碼格式以文本形式傳輸,而ProtoBuf是以二進制數(shù)據(jù)進行傳輸,所以在傳輸速率上gRPC更具有優(yōu)勢。
REST不提供內(nèi)置代碼生成功能,需要使用Swagger等工具生成API請求代碼。而gRPC具有protoc編譯器,具有代碼生成功能。
gRPC是如何工作的?
gRPC協(xié)議架構
gRPC是一種用于實現(xiàn)RPC API的技術。由于gRPC是開源框架,通信雙方都基于該框架進行二次開發(fā),無需關注由gRPC軟件框架實現(xiàn)的底層通信。
gRPC支持的操作設備在網(wǎng)絡架構里支持Dial-in和Dial-out兩種對接模式。
Dial-in模式:設備作為gRPC服務器,采集器作為gRPC客戶端。由采集器主動向設備發(fā)起gRPC連接并獲取需要采集的數(shù)據(jù)信息或下發(fā)配置。適用于小規(guī)模網(wǎng)絡。Dial-out模式:設備作為gRPC客戶端,采集器作為gRPC服務器。設備主動和采集器建立gRPC連接,將設備上配置的訂閱數(shù)據(jù)推送給采集器。適用于網(wǎng)絡設備較多的情況下。
gRPC交互過程
gRPC采用客戶端和服務器模型,以網(wǎng)絡設備為gRPC客戶端,采集器為gRPC服務器為例。設備主動和采集器建立gRPC連接,將設備上配置的訂閱數(shù)據(jù)推送給采集器。在整個gRPC交互的過程中,設備和采集器都需要使用ProtoBuf來定義Proto文件。
gRPC的應用
gRPC支持通過Telemetry技術實現(xiàn)訂閱功能(Subscribe操作)。Telemetry是一項遠程從物理設備或虛擬設備上高速采集數(shù)據(jù)的技術。設備通過推模式(Push Mode)周期性地主動向采集器上送設備的接口流量統(tǒng)計、CPU和內(nèi)存數(shù)據(jù)等信息。
編輯:jq
-
IP
+關注
關注
5文章
1863瀏覽量
155831 -
XML
+關注
關注
0文章
188瀏覽量
34531 -
API
+關注
關注
2文章
2368瀏覽量
66757 -
瀏覽器
+關注
關注
1文章
1043瀏覽量
37078 -
REST
+關注
關注
0文章
33瀏覽量
9891
原文標題:IP知識百科之可編程網(wǎng)絡系列:什么是gRPC
文章出處:【微信號:huaweidoc,微信公眾號:華為產(chǎn)品資料】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
告別傳統(tǒng) SNMP “跑不快、看不清”:gRPC 帶來的網(wǎng)絡運維效率飛躍
潤和軟件旗下捷科JettoAI平臺入選2025年度百大AI產(chǎn)品
匯北川科技榮獲2025粵港澳大灣區(qū)科創(chuàng)專精特新標桿企業(yè)百強
三防漆知識百科:三防漆是什么?核心價值有哪些?
UV三防漆是什么?UV三防漆百科
SGS授予科百特QTL認可實驗室資質(zhì)
IP3254?? 3?節(jié)/4?節(jié)串聯(lián)用電池保護 IC(科發(fā)鑫 英集芯指定代理)
百科全書:貼片電阻
IP防護等級小知識
國家知識產(chǎn)權局原局長田力普一行調(diào)研國科微
《聊一聊ZXDoc》之汽車服務導向SOME/IP
IP知識百科之什么是gRPC
評論