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文章
1885浏览量
156737 -
XML
+关注
关注
0文章
190浏览量
34584 -
API
+关注
关注
2文章
2479浏览量
67032 -
浏览器
+关注
关注
1文章
1043浏览量
37170 -
REST
+关注
关注
0文章
33浏览量
9934
原文标题:IP知识百科之可编程网络系列:什么是gRPC
文章出处:【微信号:huaweidoc,微信公众号:华为产品资料】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
IP6805U:5W无线充电发射控制器的卓越之选
告别传统 SNMP “跑不快、看不清”:gRPC 带来的网络运维效率飞跃
润和软件旗下捷科JettoAI平台入选2025年度百大AI产品
汇北川科技荣获2025粤港澳大湾区科创专精特新标杆企业百强
三防漆知识百科:三防漆是什么?核心价值有哪些?
UV三防漆是什么?UV三防漆百科
SGS授予科百特QTL认可实验室资质
IP3254 3 节/4 节串联用电池保护 IC(科发鑫 英集芯指定代理)
百科全书:贴片电阻
IP防护等级小知识
国家知识产权局原局长田力普一行调研国科微
《聊一聊ZXDoc》之汽车服务导向SOME/IP
IP知识百科之什么是gRPC
评论