理解图
了解图类型、变体以及如何发布规范
GraphOS是一个用于构建和管理图的平台。每个图对应于您组织中的一个GraphQL服务
一个GraphQL服务通常运行在多个环境中—例如,预发布或生产环境—因此,GraphOS中的每个图都有一或多个变体,每个变体对应一个环境:
每个图的每个变体都跟踪其自己的独立的GraphQL规范和操作指标。
图类型
GraphOS中的每个图都是以下图类型之一:
图类型 | 描述 |
---|---|
由以下组成的超图:
适用于所有刚开始使用GraphOS的组织。 | |
(仅限企业) | 由以下组成的超图:
适合需要完全自定义其路由器的企业组织,通常出于高级性能或数据合规性原因。 |
(仅限企业) | 一个单独的GraphQL服务,没有路由器,托管在您的基础设施中。 ⚠️ 不推荐。 |
云超级图
ⓘ 请注意
云超级图需要一个在Serverless (免费或付费)或专用计划上的Apollo组织。
云超级图推荐给每个开始使用GraphOS的组织。对于每个云超级图的变体,GraphOS都为人民提供了部署和管理路由器的服务,该路由器充当变体的公共端点。应用程序客户端通过此端点与您的GraphQL服务器(s)进行通信:
路由器会自动向GraphOS报告某些操作指标,因此您无需在您的GraphQL服务器中配置此报告。
💡 提示
云超级图使用名为Apollo Federation的架构。使用联邦,您可以分散您的超级图的功能,这些功能被称为子图。路由器根据需要执行多个子图的操作:
即使您的API当前只使用一个GraphQL服务器,云超级图也可以帮助您在组织规模扩大时添加更多子图。
自托管超级图
使用自托管超级图,GraphOS不会为您的超级图部署路由器。相反,您可以在自己的基础设施中托管超级图的路由器:
自托管的超级图提供了对您的路由器的完全控制,但同时也需要处理其部署和管理。在您采用这种图类型之前,请确保您的团队结构具备适当管理其基础设施中额外服务的能力。
单本出版物
单本出版物需要在企业计划上拥有 Apollo 组织。
一个单本出版物是由一个没有任何路由器的 GraphQL 服务器组成的图:
⚠️ 注意
Apollo 强烈建议不要使用单本出版物。随着更多团队为您的图形及其模式做出贡献,单本出版物会引入技术和物流扩展问题。
创建图形
您可以创建一个云超级图或一个非云超级图(自托管或单本出版物)。
要创建云超级图,请参阅GraphOS 快速入门。
接下来,您需要使用Rover CLI将您的图模式的(们)发布到 Apollo。有关详细信息,请参阅将模式发布到 GraphOS。
变体
为了区分在环境(如测试和生产)中运行的同图实例,您可以根据自己的图定义多个变体。每个变体都有自己的模式,以及其自己的变更历史和指标。
您的每个图变体都在GraphOS Studio中显示:
创建变体
查看本部分。