首页 > 解决方案 > Apollo Federation 上的两个微服务之间的突变

问题描述

我正在使用 Apollo Federation 来处理大量 GraphQL 微服务。我想在关注用户时创建一个通知,所以我需要将一个突变从 UserService 发送到 NotificationService。我怎样才能做到这一点?

先感谢您!

标签: apolloapollo-federationapollo-gateway

解决方案


我相信没有办法让突变跨多个微服务工作。我能想到的唯一一件事就是总是在响应中解析一些字段并在 Notification MS 中创建一个解析器。但这听起来更像是一种 hack,而不是架构解决方案。

之所以这样做,是因为 apollo 没有任何事务系统,这在查询的情况下不是必需的,但在突变时确实需要。

您应该坚持微服务之间的默认消息交换,事件总线(如 kafka 或 rabbitmq)或简单的 http api。


推荐阅读