父服务关闭时,Apollo 联合网关无法加载
Posted
技术标签:
【中文标题】父服务关闭时,Apollo 联合网关无法加载【英文标题】:Apollo Federation Gateway can't load when parent service goes down 【发布时间】:2020-09-06 18:24:44 【问题描述】:我有 3 个服务:Org、Gatekeeper 和 Fleet。 Gatekeeper 和 Fleet 从 Org 服务扩展 Org 模式。然后 Org 服务器启动并与舰队和网守一起运行,一切正常,但如果 org 关闭并且我尝试仅使用舰队和网守运行网关,我收到错误“未知类型:组织”
我在 apollo 的 API 参考中读到,网守/车队应该独立运行,但这是否意味着只有我启动了网守服务器?独立服务器可以工作,但如果父服务关闭,则不能通过网关。有没有办法让它工作?
【问题讨论】:
【参考方案1】:Apollo 文档意味着您应该能够独立运行这些服务中的每一项。例如,假设您只开发了 gatekeeper 而没有开发fleet/org。您可以通过独立运行服务器并查询/改变它来测试它。联邦添加到架构中的所有内容“都可以忽略”。
但是,一旦您尝试在联合环境中运行它,就不能忽略它。这是因为指令和其他规范更改对网关有意义。他们都必须准备好网关才能工作。
【讨论】:
以上是关于父服务关闭时,Apollo 联合网关无法加载的主要内容,如果未能解决你的问题,请参考以下文章
Apollo 网关在 docker-compose 中不起作用
Apollo 联合网关背后的 Hasura GraphQL 端点
尝试使用 .NET Core GraphQL 联合子图时,Apollo 联合网关返回错误