Best Practices for Federated GraphQL: Lessons from Teya
summary
Saltpay migrates multiple BFFs into a federated supergraph with TypeScript, claiming faster team velocity and clearer ownership by splitting schema into atomic subgraphs and one gateway. Practical items: Apollo Gateway for query planning and routing, DataLoader at the gateway for batching, gateway caching to reduce service load, and Prometheus metrics with distributed tracing for hotspots. Emphasis on consistent GraphQL error formatting, independent deployment and horizontal scaling, plus using TypeScript codegen, @defer and streaming for performance.
AI-written summary · about
chapters (9)
- 0:00Introduction to federation
- 3:21Challenges of legacy systems
- 5:47Benefits of federation
- 10:42Best practices: schema design
- 13:27Defining subgraphs
- 16:24Gateway architecture
- 18:04Error handling and caching
- 20:22Monitoring and testing
- 23:12Conclusion and summary
related talks
38mGraphQL Federation in the Wild
22m8 Years of GraphQL: Unraveling the Trade-Offs
20mThe State of GraphQL Federation
30mDeep Learnings Migrating legacy services to Federated GraphQL
23mBlueprints of Successful GraphQL Architectures
22mBFF - GraphQL Backend-for-Frontend with React UI
26mSponsored Session: From Prototype to Production: Building Custom GraphQL APIs
38mBFF vs GraphQL: A critical perspective
