学習ロードマップ

gRPC 入門

Protocol Buffers と HTTP/2 を使った高速な RPC である gRPC の基礎と、マイクロサービス間通信への適用パターンを学ぶロードマップ。

APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで Web API設計実践入門──API仕様ファーストによるテスト駆動開発
SCROLL TO BEGIN

このロードマップが扱うもの

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 を採用するかどうかの判断軸が明確になります。

ロードマップ

3 つのステップで読み進める

  1. 01
    ステップ 01 APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
    APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
  2. 02
    ステップ 02 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
    Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
  3. 03
    ステップ 03 Web API設計実践入門──API仕様ファーストによるテスト駆動開発
    Web API設計実践入門──API仕様ファーストによるテスト駆動開発

第 1 章

APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装

  1. APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装

    APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
    この章の 1 冊 APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装

    7つのAPIスタイルを天気予報サービス実装で比較・習得する

    この本で身につくこと
    • REST・GraphQL・Atom(Webフィード)・gRPC・webhook・WebSocket・RabbitMQの7スタイルを同一サービスで実装し、それぞれの適用場面を判断できる
    • 各APIスタイルの利点と欠点をアーキテクチャ設計の観点から説明できる
    • HTTPの進化(HTTP/1.1からHTTP/2・HTTP/3)がAPIスタイルの選択に与える影響を理解できる
    • GitHub CodespacesおよびDockerを使った実行可能な開発環境を素早く立ち上げられる

    想定読者: REST以外のAPIスタイル(gRPC・GraphQL・WebSocket・webhookなど)を実装レベルで理解したいバックエンドエンジニアおよびAPIを設計する立場の開発者

    本の詳細を見る →
  2. Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで

    Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
    この章の 1 冊 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで

    REST・gRPC・GraphQLの設計から、テストとセキュリティまで網羅する

    この本で身につくこと
    • OpenAPIを活用したREST API設計の要素と、スキーマ駆動開発の進め方
    • gRPCの仕組みとProtocol Buffersの基礎、API設計時のポイント
    • TypeScript + Apollo ServerによるGraphQLサーバサイド実装と、urql・graphql-codegenを使ったクライアント側開発
    • GraphQLアプリケーションのDatadogモニタリング・Sentryエラートラッキングによる本番運用手法

    想定読者: Web APIを実務で開発・運用しており、複数のAPIスタイルを比較検討したいバックエンド・フルスタックエンジニア

    本の詳細を見る →
  3. Web API設計実践入門──API仕様ファーストによるテスト駆動開発

    Web API設計実践入門──API仕様ファーストによるテスト駆動開発
    この章の 1 冊 Web API設計実践入門──API仕様ファーストによるテスト駆動開発

    API仕様ファースト開発とTDDを車の両輪として実践する

    この本で身につくこと
    • API仕様に何を書くべきかを、エンドポイント概要・エラー・リストオプションの粒度で具体的に判断できる
    • gRPCのprotoファイルを仕様ドキュメントとして機能させる書き方を習得できる
    • API仕様ファースト開発の実装順序(仕様→E2Eテスト→実装)を自チームのワークフローに組み込める
    • マイクロサービス構成と非マイクロサービス構成の両方でE2Eテストフレームワークを設計・構築できる

    想定読者: WebサービスのバックエンドAPIを設計・開発しており、テスト駆動開発を組織に根付かせたいエンジニア。特にgRPCを採用しているチームや、API仕様の技術的負債に悩む開発者。

    本の詳細を見る →