gRPC 協議

功能說明

Dubbo 從 2.7.5 版本開始支援 gRPC 協定。對於計劃使用 HTTP/2 通訊,或想利用 gRPC 帶來的 Stream、背壓和反應式程式設計能力的開發者,可以考慮啟用 gRPC 協定。

支援 gRPC 的好處

  • 為期望使用 gRPC 協定的使用者帶來服務治理能力,並方便接入 Dubbo 系統
  • 使用者可以使用 Dubbo 風格、基於介面的程式設計風格來定義和使用遠端服務

使用場景

  • 需要立即回應才能繼續處理的同步後端微服務間通訊。
  • 需要支援混合程式設計平台的多語言環境。
  • 效能至關重要的低延遲和高吞吐量通訊。
  • 點對點即時通訊 - gRPC 即時推送訊息而無需輪詢,並且對雙向串流有很好的支援。
  • 網路受限的環境 - 二進制 gRPC 訊息總是比等效的基於文字的 JSON 訊息更小。

使用方法

在 Dubbo 中使用 gRPC

範例

步驟

  1. 使用 IDL 定義服務
  2. 配置編譯器外掛程式,在本地預編譯
  3. 配置以暴露/引用 Dubbo 服務

除了原生 StreamObserver 介面類型外,Dubbo 還支援 RxJavaReactor 程式設計風格的 API。


最後修改日期:2023 年 12 月 15 日:更新失效連結 (7b8d601e9f8)