gRPC
概要
RPC(Remote Procedure Call)を実現するためのプロトコル
Googleが開発
ProtocolBuffersを利用
構造化されたデータをシリアライズ化するメカニズム
高速、低容量の通信
インターフェイス記述言語(IDL)
.protoファイルでAPI仕様を定義
protocというツールでクライアント、サーバーサイドのコードを生成
様々な言語に対応
https://gyazo.com/2bf4d0390b119747da8391f2725a0866
詳細
HTTP2で動作
通信方式
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
https://grpc.io/docs/guides/
.proto書き方
https://developers.google.com/protocol-buffers/docs/proto3
スライド
gRPC入門
https://www.slideshare.net/KenjiroKubota/grpc-141520916
Web
gRPCにおけるRPC方式の整理
https://qiita.com/yuzo777/items/046910c95559cf0fff68
#protocol
#learning