微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

联合 GraphQL 网关更新服务和架构

如何解决联合 GraphQL 网关更新服务和架构

以具有多个服务的联合 graphQL 为例,其中一些服务依赖于其他服务,如下所示:

enter image description here

网关是使用 Apollo 定义的:

const gateway = new ApolloGateway({
  serviceList: services
});

其中服务是一组可用的正在运行的服务。

一个 kubernetes 管理每个服务的可用性,因此每次服务启动或关闭时,kubernetes 都会警告网关,因此它更新此数组,并使用 gateway.load() 使用正确的可用服务更新服务器。

问题是当一个服务出现故障并且其他一些服务依赖于它时,就像上图一样,如果 Role 出现故障,Person 也会受到影响。 >

我想知道是否可以配置网关以更改服务的架构以消除依赖关系。在这种情况下,当 Role 关闭时,请更改 Person 架构,以便客户端无法再使用此字段(因为它已关闭)。

如果不可能,是否有变通的解决方案?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。