grpc 1.21.0 发布了。gRPC 是 Google 开源的高性能、通用 RPC 框架,面向移动和 HTTP/2
设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。gRPC 基于 HTTP/2
标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。
新版包含改进和错误修复,更新亮点如下:
core
- Service Config 更改为在无效服务配置上的瞬时故障中设置通道
- 将备份轮询器添加到 c-ares 解析器以更好地利用 c-ares 查询超时/重试逻辑
- 将 WSA_FLAG_NO_HANDLE_INHERIT 标志传递给 WSASocketA(),以避免在服务器上使用 CreateProcess() 时 Windows 上的句柄泄漏问题
- 在 xds 中添加 fallback-at-startup
- 退出 GRPC_ARENA_INIT_STRATEGY env 变量
- 使用 C-Ares 作为 DNS 解析器修复 gevent segfault
- 接受 unix 套接字后,显式调用 getsockname 以获取 sun_path
- RBE Windows c-core 构建
- 减轻对 googleapis-common-protos-types gem 的依赖
- 为 gpr_now 返回值的 tv_nsec 字段添加保护
- 重新启用 ALPN 检查 gRPC C 核心 SSL 堆栈
C++
- 全局配置变量迁移
- 使 cc_grpc_library 与本机 proto_library 和 cc_proto_library 规则兼容
- 在回调流测试中添加警报
C#
- 支持逐片反序列化
- 为 C# 项目的设计时间的构建添加 VS 集成
- 将服务器端拦截器的拦截器类型迁移到 Grpc.Core.Api
- 添加有关 C# nightly nuget feed 的信息
- 将 C# nightly nugets 上传到 Artifactory dev nuget feed
- 将客户端 API 类型迁移到 Grpc.Core.Api
- 使 CallCredentials 实现不可知(准备转移到 Grpc.Core.Api)
- 添加 BindServiceAttribute
- 提供从 C# 访问 verify_peer_callback 的权限
Node
- 为 libuv 事件循环添加 cares glue
Objective-C
- gRPC Objective-C 流量控制
- 更新了所有 ObjC 示例以使用新的 api
- 修复 v2 API 调度到主队列
- 修复在 mac 上找不到默认根证书文件的问题
- 默认在 iOS 上打开 CFStream
Python
- 添加 python 弃用通知
- 添加在 Python gRPC protoc 插件中剥离模块前缀的功能
- 在完成队列之上传播 KeyboardInterrupt
- 添加 Python Compression Porcelain
Ruby
- 添加 BadStatus#to_rpc_status
更新说明及下载地址 |