こんにちは、マネーフォワード 福岡開発拠点のStart up Studio部で新規プロダクトを開発しているバックエンドエンジニアのダンと申します。
今回の記事は私たちのチームでマイクロサービスアーキテクチャにあるAPI Gatewayの課題を解決できるソリューションを検討の経緯、そして辿り着けた優れたGraphQL Federationについて紹介させていただきます。
- 課題
- GraphQL Federationの前の世界
- GraphQLの誕生
- GraphQL Federation登場 – “One endpoint to rule them all”
1. 課題
まずは、マイクロサービスアーキテクチャによく出会うパターンの例を説明します。
製品をレビューするシステムを構築するプロジェクトで、フロントエンドとバックエンド二つのコンポーネントがある。
バックエンド側はドメインによる三つのサービスに分けて、それぞれのサービスは以下の情報を管理する:
- Users Service: ユーザー情報を管理するサービス
- Products Service: 製品情報を管理するサービス
- Reviews Service: 製品に対するレビューを管理するサービス