- Netflixは2022年にiOS/AndroidアプリをGraphQLへダウンタイムなしで移行した
- クライアントからAPIレイヤーまで全面的な作業を実施
- 直近までは社内APIフレームワークのFalcorを使用
- 現在はFederated GraphQLでモバイルアプリを提供
移行段階ごとの説明
- GraphQL以前はMonolithic Falcor APIを開発・管理
- Phase 1: 既存のMonolith Falcor APIの上にGraphQL Shimサービスを実装。A/Bテスト
- Phase 2: GraphQL ShimサービスとレガシーAPIモノリスを非推奨化し、Federated GraphQL Gatewayを導入。Replay TestingとSticky Canaries
安全な移行のための3つの戦略
- A/Bテスト: FalcorとGraphQL ShimをA/Bで分離してテスト
- Replayテスト: APIが正確に移行されたか確認するためにReplay Testingツールを開発
- Sticky Canaries: 特定のトラフィックを分離してCanaryに割り当て、機能だけでなくさまざまなメトリクスをテスト
まだコメントはありません。