猿问

返回给前端的数据来自多个微服务,这些数据应该在哪里整合后返回比较合适?

问题描述

返回给前端的数据来自多个微服务,这些数据应该在哪里整合后返回比较合适?
比如有个接口/getOrderInfo获取订单信息
需要从服务A获取用户信息,服务B获取用户信息订单信息,服务C获取库存信息等。
是直接调用一个接口返回 还是调用多个接口返回比较好?

Helenr
浏览 589回答 3
3回答

莫回无

getOrderInfo接口在哪个服务就在哪个服务整合啊,获取用户信息也是在这个服务里调用的其他服务吧,封装一下

婷婷同学_

调一个接口。比如服务N有接口getOrderInfo,调用流程就是client-->service N-->service a+b+c,所有数据都从N返回到客户端

萧十郎

看你要获取的核心数据是什么了,例如你的获取订单信息接口 getOrderInfo,核心数据肯定是订单,那么接口就写在订单服务模块里。 接口处理中去调用其他服务获取库存等相关数据。 调用一个接口好还是调用多个接口好?从业务上分析,数据关联性不大则调用多个接口获取多种数据。从某种层面来说,一个接口应该只返回一种数据,例如上面说的用户信息和库存信息都是在该订单的基础上而言,所以也属于订单信息。这个例子调用一个接口即可。
随时随地看视频慕课网APP

相关分类

Java
我要回答