学習ロードマップ
Protocol Buffers と HTTP/2 を使った高速な RPC である gRPC の基礎と、マイクロサービス間通信への適用パターンを学ぶロードマップ。
このロードマップが扱うもの
このロードマップは、マイクロサービスや社内 API のインターフェースに gRPC を採用したいと考えているバックエンドエンジニアを対象にしています。学び終えたときには、Protocol Buffers によるスキーマ設計、4 種類の通信パターン、エラー/認証/タイムアウト設計まで含めて、gRPC ベースのサービスを実運用に耐える形で実装・運用できる状態を目指します。
このロードマップの全体像
このロードマップは、マイクロサービスや社内 API のインターフェースに gRPC を採用したいと考えているバックエンドエンジニアを対象にしています。学び終えたときには、Protocol Buffers によるスキーマ設計、4 種類の通信パターン、エラー/認証/タイムアウト設計まで含めて、gRPC ベースのサービスを実運用に耐える形で実装・運用できる状態を目指します。
1. RPC と HTTP/2 の基礎: REST との考え方の違い、HTTP/2 の多重化、フレーミングを押さえ、gRPC が速い理由を納得感を持って理解します。 2. Protocol Buffers でスキーマを書く: message / service 定義、フィールド番号の運用、互換性のある変更方針を身につけます。 3. 4 種類の通信パターン: Unary / Server streaming / Client streaming / Bidirectional streaming の使い分けを、実装例を通して掴みます。 4. エラー・タイムアウト・リトライ: gRPC のステータスコード体系、deadline、クライアント側リトライ戦略を標準化します。 5. 認証・メタデータ・インターセプター: TLS、トークン伝搬、共通処理の差し込み方を整理し、横断的関心事を分離します。 6. マイクロサービスへの適用と運用: ロードバランシング、サービスディスカバリ、ログ / メトリクス / トレースとの統合を設計します。
gRPC は高速ですが、ブラウザから直接は扱いにくく、外部公開 API には gRPC-Gateway や GraphQL / REST との併用を考える必要があります。Protocol Buffers のフィールド番号や型変更は互換性ルールを守らないと一気にサービス間連携が壊れるため、スキーマ運用のルールづくりが重要です。周辺では、HTTP/2、TLS、認証/認可、サービスメッシュ、分散トレーシング、API ゲートウェイ、スキーマバージョニングを並行して理解しておくと、gRPC を採用するかどうかの判断軸が明確になります。
ロードマップ
第 1 章
API そのものを手を動かしながら俯瞰し、設計と実装の往復で全体像を掴む起点。gRPC を含む RPC を学ぶ前提となる API の基礎体力をここで揃える役割を担う。
REST/gRPC/GraphQL を横並びで比較し、テストやセキュリティまで通して実践する道の中核。各方式の使い分けの軸を得て、gRPC が活きる場面を判断できるようにする。
API 仕様を先に固めるファースト設計とテスト駆動の進め方を体系立てて学ぶ。実装に入る前に契約と検証の作法を身につけ、gRPC の proto 定義先行の発想へ橋渡しする。
読む順に並べています。まずは1冊目から始めましょう。
API そのものを手を動かしながら俯瞰し、設計と実装の往復で全体像を掴む起点。gRPC を含む RPC を学ぶ前提となる API の基礎体力をここで揃える役割を担う。