gRPC
概要
RPC(Remote Procedure Call)を実現するためのプロトコル Googleが開発
ProtocolBuffersを利用
構造化されたデータをシリアライズ化するメカニズム
高速、低容量の通信
インターフェイス記述言語(IDL)
.protoファイルでAPI仕様を定義
protocというツールでクライアント、サーバーサイドのコードを生成
様々な言語に対応
https://gyazo.com/2bf4d0390b119747da8391f2725a0866
詳細
通信方式
Unary RPC(Simple RPC)
1リクエスト1レスポンス
https://gyazo.com/ed238da177729582b7f32ce4fc115fb9
Server Streaming RPC
1リクエストNレスポンス
https://gyazo.com/946f8d791ce95fd47aa11b8ca5c95341
Client Streaming RPC
Nリクエスト1レスポンス
https://gyazo.com/f6cfbf2de4d29c1efa43b85c49a38499
Bidirectional Streaming RPC
NリクエストNレスポンス
https://gyazo.com/a87bbdabf5be46b82611006f6034f7e3
参考文献
公式
docs
.proto書き方
スライド
gRPC入門
Web
gRPCにおけるRPC方式の整理