gRPC
Google遠程過程調(diào)用(Google Remote Procedure Call,gRPC)協(xié)議是谷歌發(fā)布的高性能、通用的開源RPC軟件框架。gRPC提供了多種編程語言,同時gRPC也是對網(wǎng)絡(luò)設(shè)備進行配置和管理的一種方法。
gRPC vs REST
REST(Representational State Transfer)表征狀態(tài)轉(zhuǎn)移,是一種軟件架構(gòu)風(fēng)格,同樣為管理和配置網(wǎng)絡(luò)設(shè)備提供了一種API接口設(shè)計的方法。gRPC與REST兩者的主要差異如下:
幾乎所有的瀏覽器都支持RSET,而支持gRPC的瀏覽器非常有限。這是REST相對于gRPC的主要優(yōu)勢。
REST遵循基于HTTP 1.1的請求-響應(yīng)通信模型,而gRPC遵循基于HTTP 2.0的客戶端-響應(yīng)通信模型。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é)議架構(gòu)
gRPC是一種用于實現(xiàn)RPC API的技術(shù)。由于gRPC是開源框架,通信雙方都基于該框架進行二次開發(fā),無需關(guān)注由gRPC軟件框架實現(xiàn)的底層通信。
gRPC支持的操作設(shè)備在網(wǎng)絡(luò)架構(gòu)里支持Dial-in和Dial-out兩種對接模式。
Dial-in模式:設(shè)備作為gRPC服務(wù)器,采集器作為gRPC客戶端。由采集器主動向設(shè)備發(fā)起gRPC連接并獲取需要采集的數(shù)據(jù)信息或下發(fā)配置。適用于小規(guī)模網(wǎng)絡(luò)。Dial-out模式:設(shè)備作為gRPC客戶端,采集器作為gRPC服務(wù)器。設(shè)備主動和采集器建立gRPC連接,將設(shè)備上配置的訂閱數(shù)據(jù)推送給采集器。適用于網(wǎng)絡(luò)設(shè)備較多的情況下。
gRPC交互過程
gRPC采用客戶端和服務(wù)器模型,以網(wǎng)絡(luò)設(shè)備為gRPC客戶端,采集器為gRPC服務(wù)器為例。設(shè)備主動和采集器建立gRPC連接,將設(shè)備上配置的訂閱數(shù)據(jù)推送給采集器。在整個gRPC交互的過程中,設(shè)備和采集器都需要使用ProtoBuf來定義Proto文件。
gRPC的應(yīng)用
gRPC支持通過Telemetry技術(shù)實現(xiàn)訂閱功能(Subscribe操作)。Telemetry是一項遠程從物理設(shè)備或虛擬設(shè)備上高速采集數(shù)據(jù)的技術(shù)。設(shè)備通過推模式(Push Mode)周期性地主動向采集器上送設(shè)備的接口流量統(tǒng)計、CPU和內(nèi)存數(shù)據(jù)等信息。
編輯:jq
-
IP
+關(guān)注
關(guān)注
5文章
1771瀏覽量
151181 -
XML
+關(guān)注
關(guān)注
0文章
188瀏覽量
33522 -
API
+關(guān)注
關(guān)注
2文章
1558瀏覽量
63435 -
瀏覽器
+關(guān)注
關(guān)注
1文章
1040瀏覽量
36036 -
REST
+關(guān)注
關(guān)注
0文章
33瀏覽量
9578
原文標(biāo)題:IP知識百科之可編程網(wǎng)絡(luò)系列:什么是gRPC
文章出處:【微信號:huaweidoc,微信公眾號:華為產(chǎn)品資料】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
電子電路百科全書
百度百科啟動“繁星計劃”
硬件工程師入門的基礎(chǔ)元器件知識

凌科獲授基于ISO56005的《創(chuàng)新與知識產(chǎn)權(quán)管理能力》證書

半導(dǎo)體術(shù)語小百科

鴻蒙智行再迎OTA升級,車載小藝化身私人用車顧問、百科導(dǎo)師

名單公布!【書籍評測活動NO.49】大模型啟示錄:一本AI應(yīng)用百科全書
機房監(jiān)控,機房監(jiān)控系統(tǒng)百科
機房監(jiān)控,機房監(jiān)控百科
半導(dǎo)體知識百科:不可不知的50大專業(yè)名詞


芯片行業(yè)說的IP,是什么?

鹽霧試驗箱的百科介紹


評論