按架构缝合列排序

时间:2019-07-17 20:55:21

标签: graphql microservices apollo

我有一个客户端,它使用服务器端分页/排序显示帖子的数据表。数据表有两列。一种是帖子名称,该名称存储在posts-微服务的数据库中。另一列是发布者的用户名,该用户名存储在用户微服务的数据库中。我的查询如下:

query {
 posts {
   name
   poster {
     username
   }
 }
}

我有一个api-gateway扩展了 Post 类型,以将发布者委托给users-service。一切正常,但是我不确定如何通过用户名列对表进行排序,因为posts-service无法访问users-service数据库。

我能想到的不同解决方案如下:

  1. 将用户名存储在邮政服务的数据库中
  2. 从posts-service连接到users-service的数据库

两者似乎都不是个好主意。有一个graphql方法可以解决这个问题吗?

0 个答案:

没有答案