gRPC 1.16.0 正式發佈,谷歌的高性能 RPC 框架

gRPC 是 Google 開源的高性能、通用 RPC 框架,面向移動和 HTTP/2 設計,是由谷歌發佈的首款基於 Protocol Buffers 的 RPC 框架。gRPC 基於 HTTP/2 標準設計,帶來諸如雙向流、流控、頭部壓縮、單 TCP 連接上的多複用請求等特性。這些特性使得其在移動設備上表現更好,更省電且節省空間佔用。

gRPC 1.16.0 正式發佈,谷歌的高性能 RPC 框架

gRPC 1.16.0 發佈了,這是一個 gRPC 核心更新版本,針對各語言版本都進行了更新,包含優化、改進和錯誤修復,下面列出了值得關注的更新:

Core

  • Keepalive watchdog firing should return status UNAVAILABLE. (#16764)
  • Set TCP_USER_TIMEOUT socket option for linux . (#16419)
  • When using c-ares, resolve ip literals and Windows localhost on our own. (#16420)
  • Turn loading system root certificate as default. (#16536)
  • Change pick_first to not unref unselected subchannels. (#16342)

C++

  • fix *_unsecure.pc files. (#16754)
  • cmake: prevent C core from depending on libstdc++. (#16752)
  • Implement Watch method in health check service. (#16574)
  • Fix async_stream.h warning on Visual Studio. (#16544)

C#

  • Secure channel throughput improvements: Linux x86_64 version of grpc_csharp_ext nuget now ships with assembly-optimized version of boringssl, which leads to significant improvements in throughput of secure C# channels. See https://github.com/grpc/grpc/blob/v1.16.x/doc/ssl-performance.md for details.
  • Expose certificate request type in SslServerCredentials. (#16552)
  • build assembly-optimized grpc_csharp_ext with cmake. (#16777)
  • ChannelOption improvements. (#16756)
  • Various allocation optimizations. (#16631)
  • Add new C# serialization API. (#16367)
  • Add constructor overload for RpcException. (#16553)
  • Avoid leaking resources when starting a call fails. (#16554)
  • Expose TryWaitForStateChangedAsync. (#16556)
  • Add exception info to Status.Detail if metadata credentials throws. (#16543)

Objective-C

  • Fixed a crash related to error reporting. (#16696)

Python

  • Fix SSL channel credential when an argument is None. (#16640)
  • Bazel: Fix python BUILD rules. (#16561)

Ruby

  • Switch to send instead of method(...).call. (#16642)
  • Rescue GRPC::Core::CallError so that worker threads are not killed. (#16477)
  • support for ruby_package options. (#16014)
  • ruby: Raise instead of hanging if grpc is used before and after fork. (#16332)

發佈說明和下載地址 https://github.com/grpc/grpc/releases/tag/v1.16.0


分享到:


相關文章: