gRPCはGoogleが開発した高速なAPI通信とスキーマ駆動開発を実現するRPCフレームワークであり、マイクロサービス間の内部通信を実現する有力な選択肢として活用されはじめています。本書ではサーバー側(Go)/ クライアント側(Ruby)と異なる言語を用いて、いくつかのサンプルアプリケーションを実装しながら、gRPCとRESTの違い、Protocol Buffersにおけるスキーマの文法、単純なRPCから双方向ストリーミングRPCまでのgRPCにおける基本的な実装方法などを平易に説明します。
【目次】
第1章 gRPCとRESTの違い
第2章 .protoファイルを書いてみよう
第3章 Go言語でつくるgRPCサーバー
第4章 RailsアプリケーションからgRPCサーバーにアクセスする
第5章 インターセプタでログや認証を追加してみよう
第6章 単方向ストリーミングでつくる画像アップロードAPI
第7章 双方向ストリーミングでつくるリアルタイムリバーシ
付録A Google APIに学ぶprotoスタイルガイド
付録B Protocol Buffersの自動コード生成仕様(Go編)
付録C Protocol Buffersの自動コード生成仕様(Ruby編)
目次プレビュー
- はじめに
- 第1章 gRPCとRESTの違い
- 第2章 .protoファイルを書いてみよう
-
対象環境
-
ソースコードについて
-
ご意見やご質問など
-
免責事項
-
3.1 単項RPC
-
3.2 スキーマファースト
-
3.3 .protoファイルを作る
-
3.4 Go言語でのサーバー側の実装と解説
-
3.5 CLIツールで動作確認する
-
A.1 Googleの推奨規則
-
A.2 インタフェース名
-
A.3 メソッド名
-
A.4 メッセージ名
-
A.5 列挙型
-
A.6 フィールド名
-
A.7 Google以外の事例
-
B.1 はじめに
-
B.2 コンパイラ呼び出し
-
B.3 パッケージ
-
B.4 メッセージ型
-
B.5 フィールド
-
B.6 列挙型
-
B.7 拡張機能 (proto2)
-
B.8 Service
-
C.1 はじめに
-
C.2 コンパイラ呼び出し
-
C.3 パッケージ
-
C.4 メッセージ型
-
C.5 フィールド