gRPC
Google远程过程调用(Google Remote Procedure Call,gRPC)协议是谷歌发布的高性能、通用的开源RPC软件框架。gRPC提供了多种编程语言,同时gRPC也是对网络设备进行配置和管理的一种方法。
gRPC vs REST
REST(Representational State Transfer)表征状态转移,是一种软件架构风格,同样为管理和配置网络设备提供了一种API接口设计的方法。gRPC与REST两者的主要差异如下:
几乎所有的浏览器都支持RSET,而支持gRPC的浏览器非常有限。这是REST相对于gRPC的主要优势。
REST遵循基于HTTP 1.1的请求-响应通信模型,而gRPC遵循基于HTTP 2.0的客户端-响应通信模型。HTTP 2.0在速度上有着绝对的优势。
REST使用JSON或XML编码格式承载数据,而gRPC默认使用ProtoBuf编码格式承载数据。JSON或XML编码格式以文本形式传输,而ProtoBuf是以二进制数据进行传输,所以在传输速率上gRPC更具有优势。
REST不提供内置代码生成功能,需要使用Swagger等工具生成API请求代码。而gRPC具有protoc编译器,具有代码生成功能。
gRPC是如何工作的?
gRPC协议架构
gRPC是一种用于实现RPC API的技术。由于gRPC是开源框架,通信双方都基于该框架进行二次开发,无需关注由gRPC软件框架实现的底层通信。
gRPC支持的操作设备在网络架构里支持Dial-in和Dial-out两种对接模式。
Dial-in模式:设备作为gRPC服务器,采集器作为gRPC客户端。由采集器主动向设备发起gRPC连接并获取需要采集的数据信息或下发配置。适用于小规模网络。Dial-out模式:设备作为gRPC客户端,采集器作为gRPC服务器。设备主动和采集器建立gRPC连接,将设备上配置的订阅数据推送给采集器。适用于网络设备较多的情况下。
gRPC交互过程
gRPC采用客户端和服务器模型,以网络设备为gRPC客户端,采集器为gRPC服务器为例。设备主动和采集器建立gRPC连接,将设备上配置的订阅数据推送给采集器。在整个gRPC交互的过程中,设备和采集器都需要使用ProtoBuf来定义Proto文件。
gRPC的应用
gRPC支持通过Telemetry技术实现订阅功能(Subscribe操作)。Telemetry是一项远程从物理设备或虚拟设备上高速采集数据的技术。设备通过推模式(Push Mode)周期性地主动向采集器上送设备的接口流量统计、CPU和内存数据等信息。
编辑:jq
-
IP
+关注
关注
5文章
1849浏览量
154902 -
XML
+关注
关注
0文章
188浏览量
34387 -
API
+关注
关注
2文章
2147浏览量
66215 -
浏览器
+关注
关注
1文章
1042浏览量
36905 -
REST
+关注
关注
0文章
33浏览量
9833
原文标题:IP知识百科之可编程网络系列:什么是gRPC
文章出处:【微信号:huaweidoc,微信公众号:华为产品资料】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
UV三防漆是什么?UV三防漆百科
SGS授予科百特QTL认可实验室资质
IP3254 3 节/4 节串联用电池保护 IC(科发鑫 英集芯指定代理)
百科全书:贴片电阻
IP防护等级小知识
国家知识产权局原局长田力普一行调研国科微
《聊一聊ZXDoc》之汽车服务导向SOME/IP
正点原子 AI BOX0 智能伴侣,1.54寸高清屏+长效续航,语音畅聊,情景对话,知识科普,多色可选,随身携带!
电子电路百科全书
如何理解芯片设计中的IP
你的数字资产该如何保护
百度百科启动“繁星计划”
LM567C的真正的中心频率计算公式是什么?
硬件工程师入门的基础元器件知识

IP知识百科之什么是gRPC
评论