AICon上海「Agent与多模态解决方案专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

gRPC 1.0 发布!

  • 2016-08-29
  • 本文字数:931 字

    阅读完需:约 3 分钟

鉴于 gRPC 已进入稳定版分支,并对应用于生产中准备就绪,Google 发布了 gRPC 1.0

gRPC 源于被称为 Stubby 的 Google 内部项目,早期是用于一些 Google 内部服务间的通信。 18 个月前 Google 开源了 gRPC 框架,希望借此 gRPC 能被更广泛地采纳,并在调用 Google 所提供的服务时、通过互联网与其它服务通信时或在自身产品内部应用 gRPC。

gRPC 是与平台无关的 RPC 系统,它使用 Protocol Buffers (ProtoBuf) IDL 定义终端服务和所传输的消息负载,进而可为多种语言生成存根进程(stub)。当前在 Linux、Mac 和 Windows 平台上,gRPC 支持多达十种语言,分别是: C C++ C# Go Java (包括 Java/Android )、 Node.js Objective-C PHP Python Ruby 。gRPC 原生地使用 C、Go 和 Java 语言编程实现,通过包装 C 函数库提供给其它语言使用。为了显示各种 gRPC 实现的通信延迟情况对比,Google 给出了在同一数据中心中不同虚拟机实例间的通信性能精要报告。对于单一的同步安全消息,报告显示作为基准的 Netperf 的延迟大约为 100 微秒,而 C++、Java 和 C#语言实现的延迟大约在 200 到 300 微秒,Ruby、Python 和 Node.js 语言实现的延迟分别在 700 微秒、900 微秒和 1,100 微秒左右。

gRPC 将需传输的消息使用 Protocol Buffers 3.0 序列化为二进制格式。相对于文本格式而言,ProtoBuf 方式可提供更优的性能。据 Google 工程师 Kelsey Hightower 介绍,ProtoBuf 编码的消息比 JSON 格式消息的大小降低了一半,而序列化和反序列化所用的时间仅为后者的三分之一。

与单一 RPC 中一个请求紧跟着一个响应的方式不同,gPRC 使用 HTTP/2 提供客户和服务器间的单向或双向流。gRPC 支持同步通信和异步通信,及 SSL/TLS 和 OAuth2(使用 Google API)方式的认证。

gRPC 支持以 CocoaPods、gem、Gradle、Maven、npm、NuGet、pecl、pip 或 Docker 镜像等方式提供二进制文件,这简化了安装过程。

据Google 宣称,Cisco、CoreOS、Juniper、Netflix 和Square 等企业内部正在使用gRPC。

查看英文原文: gRPC 1.0 is Ready for Production


感谢百占辉对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-08-29 19:004660
用户头像

发布了 227 篇内容, 共 79.7 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

最好的私有云桌面解决方案

青椒云云电脑

云桌面

出海 SaaS 企业增长修炼手册2:Kyligence 落地 PLG 是如何避坑的?

Kyligence

指标管理 SaaS 增长

1024 有奖征名|来给矩阵起源办公室的新猫取名字呀~

MatrixOrigin

1024 MatrixOrigin MatrixOne

如何确定Apache Kafka的大小和规模

互联网工科生

kafka

挑战吧,HarmonyOS应用开发工程师

HarmonyOS开发者

HarmonyOS

揭示Lombok的代码设计缺陷:探索封装问题

树上有只程序猿

lombok Java 开发

协同发展,生态聚合丨1024程序员节暨「源聚一堂」开源技术沙龙(北京站)成功举办

开放原子开源基金会

产品经理的效率利器:揭秘提升工作效率的10大神器!

彭宏豪95

项目管理 产品经理 在线白板 办公软件 在线协作

Op丨ARB链dapp代币合约质押项目系统开发

l8l259l3365

如何使用透明贴图实现火焰效果

3D建模设计

材质 纹理 贴图

特权账号管理系统简述

尚思卓越

特权账号管理 特权账号 PAM

特权账号的功能

尚思卓越

网络安全 堡垒机 特权账号

【有奖体验】AIGC小说创作大赛开启!通义千问X函数计算部署AI助手

Serverless Devs

阿里云 Serverless AI

如何制作二维码会议签到系统?

草料二维码

​交易所开发 PancakeSwap DeFi 成功的秘密:您的 DEX 发展蓝图

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

等保测评后还要花很多钱做等保整改吗?

行云管家

等保 等级保护 等保测评 等保2.0

1024程序员节|是时候,展示真正的实力了!

Openlab_cosmoplat

1024 1024程序员节

焕新升级!新一代云原生可观测平台

华为云原生团队

云计算 容器 云原生 边缘计算

多款国产操作系统安装数据库干货文档汇总(含Oracle/MySQL/国产数据库等)

墨天轮

MySQL 数据库 oracle 国产操作系统 麒麟软件

关于数据库分片你需要知道的

遥遥知识库

Java 分布式数据库 后端 数据库分片 关于XX你应该知道的

HarmonyOS多音频播放并发政策及音频管理解析

HarmonyOS开发者

HarmonyOS

如何为3D模型设置自发光材质?

3D建模设计

材质 纹理 贴图

幸福里基于 Flink & Paimon 的流式数仓实践

字节跳动云原生计算

flink paimon

如何区分特权账号管理系统PAM和堡垒机

尚思卓越

网络安全 堡垒机 特权账号管理

第11期 | GPTSecurity周报

云起无垠

gRPC 1.0发布!_开源_Abel Avram_InfoQ精选文章