『スターティングgRPC』を読んだ
By gushernobindsme at
毎回同じ書き出しで恐縮なんですが、gRPC を雰囲気で触っている危機感があり、体系的な知識が欲しかったので本を読みました。
gRPC の本なんてきっと出てないよなあ、と思いつつ amazon を検索してみたら、技術の泉シリーズから一冊だけ出ていました。ありがとう技術書典。
構成としては、
- 第一章:REST を引き合いに出しつつ gRPC の特徴を説明
- 第二章:Protocol Buffer 定義の書き方を解説
- 第三章以降:コードサンプルを見せつつ、サーバとクライアントの実装を紹介
という感じ。
第二章までの時点ですでにとても良いのだけど、第三章以降で Unary、Client Streaming、Duplex Streaming の実装がガッツリ紹介されているのがありがたかった。特に、Streaming は何度説明を読んでもいまいちわからずにいたので、具体的なユースケースがイメージできてよかったです。
サンプルコードは Go (と一部 Ruby)で書かれていて、どちらもあまり詳しくない自分にはちょっと厳しかった。が、gRPC の考え方を理解する分には特に支障なく読み進められました。
あとは、巻末の付録の「Google API に学ぶ proto スタイルガイド」も非常によかった。REST の API の設計指針みたいなやつの gRPC 版ってないのかなあ、とネットをうろうろすることが多かったんだけど、これからはコイツが灯台になってくれそう。
読書メモはこんな感じ。Go のお勉強はまた今度でいいかな…という感じだったため、実装に関する話はまるっと端折ってます。同じ内容を Rust で実装するとどうなるかやってみたい。が、まあ、それはまたの機会に……。
gRPC についてある程度まとまった情報が欲しい、という人は買ってみるといいんじゃないでしょうか。