使用
GraphQL 联邦

GraphQL 联邦是分布式架构中缺失的 API 层。它消除了后端和前端之间的摩擦,使团队能够以更少的协调和样板代码交付从聊天机器人到错误修复的任何内容。

了解企业选择 GraphQL 联邦的原因

Image hero

API 组合层

使用 GraphQL 联邦为任意数量的客户端应用程序提供支持。

企业通常拥有数百个微服务,这些微服务为任意数量的客户端应用程序提供服务。编写后端即前端(BFF)来缓解这种复杂性会导致不一致性、技术债务以及团队之间的摩擦,从而减缓创新速度。

服务团队可以将 API 作为自助式图谱交付给前端团队,而不是将服务作为一系列手写 BFF 交付。这个超级图位于现有服务之上,因此无需重新架构。它可以演进以满足业务需求,同时减少下游的重大更改。客户端团队可以使用声明性查询语言从单个端点获取他们需要的所有数据。

为什么要选择 GraphQL 联邦?

自助式契约

GraphQL 联邦使服务团队能够为任何前端团队都可以查询的自助式文档化超级图做出贡献。使用 GraphQL 使演进 API 变得更容易,从而减少摩擦和重大更改。

单一语义层

创建一个 API 访问层,定义业务域及其之间的关系。这提供了更好的可组合性,并在您的应用程序中推动一致的用户体验。

企业级解决方案

超级图可以每天为任意数量的应用程序提供数十亿次操作。由于它促进了重用,因此将来交付任意数量的应用程序也会更容易、更快。

工作原理

使用任何语言定义域

GraphQL 联邦为领域驱动设计提供了理想的架构。服务团队可以将域以及域之间的关系定义为图。

为此,服务开发人员会使用任何语言向超级图贡献单个 GraphQL API。由于 GraphQL 不需要版本,因此随着时间的推移更容易演进这些 API。

组合超级图

一个名为 组合 的流程将这些子图模式合并成一个统一的模式。

虽然超级图对于服务团队来说是模块化的,但它为任意数量的当前或将来的客户端应用程序提供了一个单一的自助式平台。

提供单个端点

这种架构不仅为服务团队提供可组合性和弹性。它也极大地简化了客户端开发人员的体验。

客户端团队可以使用声明性查询语言和单个端点获取他们需要的数据,无论数据存储在何处。他们可以将更多精力放在推动业务发展的功能上,而不是 API 纠缠。