#API設計
9件のフレームワーク
コントラクトファースト設計
API仕様を最初に定義してから実装する開発アプローチ
API設計の品質向上
フロント・バック並行開発
マイクロサービス間の契約管理
APIゲートウェイパターン
クライアントとマイクロサービス群の間に玄関口を1つ置き、ルーティング・認証・レート制限などの横断的関心事を集約するアーキテクチャパターン。導入判断から設計手順までを解説。
マイクロサービス統合
API管理
クロスカッティング関心事の集約
BFF(Backends for Frontends)
フロントエンドごとに専用バックエンドAPIを用意
マルチプラットフォーム対応
API最適化
フロントエンド開発の高速化
スロットリングパターン
リクエストレート制限でリソース消費を制御
APIレート制限
リソース保護
マルチテナントの公平性確保
APIバージョニング
APIの後方互換性を維持しながら進化させるためのバージョン管理戦略
公開APIの互換性維持
破壊的変更の安全なリリース
BFFパターン(Backend for Frontend)
フロントエンドごとに専用のバックエンドを設けることで、UIに最適化されたAPIを提供するパターン
モバイルとWebで異なるAPI要件に対応
フロントエンドの開発効率向上
GraphQL設計原則
クライアントが必要なデータだけを効率的に取得できるAPI設計のための原則とベストプラクティス
柔軟なAPI設計
フロントエンド駆動のデータ取得
レートリミティング
APIやサービスへのリクエスト数を制限し、過負荷やサービス乱用を防ぐ保護メカニズム
APIの過負荷防止
DDoS対策
公平なリソース配分
冪等性パターン
同じ操作を何度実行しても結果が変わらないように設計し、リトライや重複リクエストに安全に対処するパターン
決済処理の重複防止
APIのリトライ安全性の確保