Node.js mongo DB change strem在生产环境中实现负载平衡

Node.js mongo DB change strem在生产环境中实现负载平衡,node.js,mongodb,stream,changestream,Node.js,Mongodb,Stream,Changestream,具有负载平衡的mongo变更流 有谁能帮助我们通过负载平衡服务器实现mango变更流。。? 当我进行负载平衡时,我们正在研究微服务体系结构在生产中面临的问题。当我在单台服务器上执行任何操作时,在4台服务器上部署相同的代码。从所有4台服务器触发更改流触发器。 所以我想要的应该是从执行操作的同一台服务器触发 提前感谢更改流是数据库级别的概念。数据从数据库中插入/更新/删除,这将生成更改事件。任何数量的订阅者都可以订阅更改事件,并对更改执行任何他们想执行的操作。每个订户都会收到每个更改事件的通知 变更

具有负载平衡的mongo变更流

有谁能帮助我们通过负载平衡服务器实现mango变更流。。? 当我进行负载平衡时,我们正在研究微服务体系结构在生产中面临的问题。当我在单台服务器上执行任何操作时,在4台服务器上部署相同的代码。从所有4台服务器触发更改流触发器。 所以我想要的应该是从执行操作的同一台服务器触发


提前感谢

更改流是数据库级别的概念。数据从数据库中插入/更新/删除,这将生成更改事件。任何数量的订阅者都可以订阅更改事件,并对更改执行任何他们想执行的操作。每个订户都会收到每个更改事件的通知

变更流并不意味着通知发起所述变更的应用程序。这是多余的-应用程序已经知道它做了什么


考虑重新表述您的问题,以解释您试图更好地完成的任务。

更改流是一个数据库级别的概念。数据从数据库中插入/更新/删除,这将生成更改事件。任何数量的订阅者都可以订阅更改事件,并对更改执行任何他们想执行的操作。每个订户都会收到每个更改事件的通知

变更流并不意味着通知发起所述变更的应用程序。这是多余的-应用程序已经知道它做了什么


请考虑重新表述您的问题,以解释您试图更好地完成的任务。

您能否向我们展示一些代码?这是否回答了您的问题?当然@AvivLo我认为代码可以正常工作,因为它必须工作。你可以检查我是否错了。请更正我async userWatch(db){try{let userCollection=db.collection('users');let userChangeStream=userCollection.watch({fullDocument:'updateLookup');userChangeStream.on('change',async(change)=>{}}}你能给我们看一些代码吗?这能回答你的问题吗?当然@AvivLo我认为代码工作得很好,因为它必须工作。你可以检查我是否错了,请纠正我async userWatch(db){try{let userCollection=db.collection('users'));let userChangeStream=userCollection.watch({fullDocument:“updateLookup”});userChangeStream.on('change',async(change)=>{}}})我不知道“使用负载平衡服务器管理更改流”是什么意思。我有4个来自4个不同服务器的连接(在负载均衡器下)当任何集合中发生更改时,都会生成4个请求。因此,我希望停止此行为,并且只有一台服务器应创建该更改流请求。是否有其他方法来管理此问题,因为如果一台服务器停止更改流,我们无法处理单个订阅者,即数据同步将停止在服务器之间停好…?您描述的是一个有许多实现的工作队列。更改流是一种广播机制,听起来不适合您的任务。实际上,我仍然不明白您询问的是生产方还是消费方。我问的是消费方我不知道您在说什么意思是“使用负载均衡服务器管理变更流”。我有4个来自4个不同服务器的连接(在负载均衡下)当任何集合中发生更改时,都会生成4个请求。因此,我希望停止此行为,并且只有一台服务器应创建该更改流请求。是否有其他方法来管理此问题,因为如果一台服务器停止更改流,我们无法处理单个订阅者,即数据同步将停止正确地在服务器之间停止…?您描述的是一个工作队列,其中有许多实现。更改流是一种广播机制,听起来不适合您的任务。实际上,我仍然不明白您是询问生产方还是消费方。我问的是消费方