在产品页面上(如图所示),我们根据微服务响应显示和隐藏选项。所有这些微服务调用都是并行的,并且不会引起任何延迟问题(到目前为止)。
这就是微服务的结构。
菜单中显示的制造,型号,变体由产品微服务
提供支持产品图片,视频,360次观看,新闻,路试来自 CMS 微服务
产品评分,评论来自产品评论微服务
现在,这里需要注意的一点是,每件事都是对相应微服务的网络调用。我们正在对上述微服务进行9个并行的网络调用,以增强产品页面上的内容。
这是问题...
在这种情况下,请帮助我们确定正确的方法。
答案 0 :(得分:0)
我认为此页面的网络调用过多。
1)是否应该继续进行多个并行调用,因为它们不会引起任何延迟问题?
我相信这些电话太多了。
2)我们是否应该考虑通过将每个微服务的请求合并为1来减少网络呼叫?
我认为是。有几个原因。
连接速度较慢 如果网络速度不错,那么您可能会感觉不到,但是对于移动用户而言,这可能会太多。此外,对于速度较慢的网络,带宽也非常重要。提防
安全性 您调用的API越多,暴露的攻击面就越多。
添加更多API 如果添加更多API,则可能必须同时更改客户端和服务器。但是,有了统一的响应,您要做的工作就更少了。
3)是否应通过事件驱动系统将此数据同步到产品微服务?
要看情况。当您的只读查询过高时(这种情况),实例化视图非常有用。当用户数量增长时,您最终可能需要采用这种方法。