尽管我发现进入微服务技术非常吸引人且有许多可获得的奖励,但我遇到了一个问题,即当你传统地基于JPA编写查询时,可能会连接客户与地址(这只是一个例子)。
问题在于,我们需要返回许多客户记录(每次100条),其中每个地址都分配给一个客户(假设为一对一关系)。
使用Join和JPA很容易解决此问题,但在微服务中,实际上我们需要两个微服务,一个用于客户,一个用于地址。问题是,我们可能首先获取客户记录,但是如何返回与每个客户相关的所有地址记录,因为地址记录依赖于正在查询的客户呢?
我认为我们不能在每个微服务中使用单个查询来返回每个地址,除非我们使用第一个结果中的每个客户ID,因为这种方法会带来很多问题。
由于查询条件可能不涉及到两个微服务(例如:如果我们按姓氏搜索),因此我们没有单个标准值可以在两个微服务中使用,从而使我们能够轻松地将数据映射到网关中。
那么我们该怎么办呢?
问题在于,我们需要返回许多客户记录(每次100条),其中每个地址都分配给一个客户(假设为一对一关系)。
使用Join和JPA很容易解决此问题,但在微服务中,实际上我们需要两个微服务,一个用于客户,一个用于地址。问题是,我们可能首先获取客户记录,但是如何返回与每个客户相关的所有地址记录,因为地址记录依赖于正在查询的客户呢?
我认为我们不能在每个微服务中使用单个查询来返回每个地址,除非我们使用第一个结果中的每个客户ID,因为这种方法会带来很多问题。
由于查询条件可能不涉及到两个微服务(例如:如果我们按姓氏搜索),因此我们没有单个标准值可以在两个微服务中使用,从而使我们能够轻松地将数据映射到网关中。
那么我们该怎么办呢?