NodeJS微服务,结合数据

我正在构build一个由几个核心“部分”(用户,消息和交易信号)组成的NodeJS平台。

所以我的想法是为他们每个人创build微服务,并且工作得很好..但是我无法理解如何在微服务之间“join”数据(我是一个最初的前哨者)

例如,我有3个微服务。每个都有自己的MongoDB,在它自己的机器上完成隔离。想象一下从一个微服务中检索消息的常见情况,消息有一个'user_id',我需要用户名和profilePicture将在检索到的消息对象中进行组合。

我读了很多关于使用Redis的信息,但是对我来说,这看起来像是一个“消息传递”服务,而不是一个“结合”服务。谁能帮助我度过黑暗?

谢谢!!

在这里输入图像描述

我知道这是一个非常普遍的问题,但是当我们把多个微服务的数据结合起来的时候,我却无法掌握'最佳实践'。

我相信这可以使用kafkastream来完成,它是一个pub / sub模型,您可以根据一个公共密钥来joinstream。 您可以订阅一个主题,或添加一个数据转换服务,该服务可以连接多个stream,并将连接/转换的数据推送到一个新的stream中。 所有想要使用这些数据的服务都可以订阅这个新的数据stream。 我build议你通过这个链接