gRPC

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。153.175.41.142 (会話) による 2021年9月20日 (月) 06:37個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

gRPC
開発元 Google
初版 2016年8月
最新版
1.29.1
リポジトリ ウィキデータを編集
プログラミング
言語
Android Java, C#, C++, Dart, Go, Java, Kotlin/JVM, Node.js, Objective-C, PHP, Python, Ruby
種別 リモートプロシージャコール
ライセンス Apache License 2.0
公式サイト grpc.io
テンプレートを表示

gRPC (gRPC Remote Procedure Calls[1]) は、オープンソースリモートプロシージャコール (RPC) システムである。当初はGoogleによって、RPC基盤であるStubbyの次世代版として2015年に開発された。

gRPCは、HTTP/2をトランスポートとして利用し、Protocol Buffersインタフェース記述言語およびデータエンコーディングとして利用する。提供する機能としては、認証、双方向のストリーミングとフロー制御、同期および非同期のバインディング、キャンセルとタイムアウトの対応などがある。多くの言語において、クロスプラットフォームなクライアントおよびサーバーのバインディングを生成できる。

gRPCの最も一般的な利用シナリオとしては、マイクロサービス型のアーキテクチャーにおけるサービス間の接続や、モバイルデバイスのクライアントとバックエンドサービスとの接続などが挙げられる[2]

なおgRPCはHTTP/2を高度に利用するため、gRPCクライアントをWebブラウザ上に直接実装することは不可能であり、他の方法で通信するためのプロキシが必要になる。grpc-webはこれを補助するためのソフトウェアであり、デフォルトのプロキシとしてenvoyを使用する。

gRPCを利用するプロジェクトと企業

u-bmc[3]とFalco[4]のように、 多くの組織がgRPCを利用している。

2019年1月8日にDropboxは、次世代の「Courier」と呼ばれるSOAアーキテクチャーの核となる次世代のRPCフレームワークを発表した。CourierはgRPCベースで、既存の独自のRPCフレームワークと親和性が高いとされた[5]

脚注

  1. ^ https://grpc.io/faq#what-does-grpc-stand-for
  2. ^ https://grpc.io/about/
  3. ^ u-bmc”. GitHub.com. 2019年11月16日閲覧。
  4. ^ Falco. Retrieved from https://falco.org/.
  5. ^ Nigmatullin, Ruslan; Ivanov, Alexey (2019年1月8日). “Courier: Dropbox migration to gRPC”. 2019年1月9日閲覧。

関連項目

外部リンク