gpt4 book ai didi

javascript - 独立的网络和工作进程,是否应该为它们各自打开一个新连接?

转载 作者:行者123 更新时间:2023-11-30 15:19:11 26 4
gpt4 key购买 nike

我目前正在尝试构建一个具有网络和工作进程的 NodeJS 网络应用程序,并使用 AMQP 在它们之间进行通信。在我当前的设置中,启动应用程序涉及启动 Web 进程的脚本 (server.js) 和工作进程的另一个脚本 (worker.js)。它们中的每一个都包含第三个文件,amqp.js,它使用一个启动函数,该函数涉及创建一个连接,然后创建一个 channel ,然后断言队列。

然而,在尝试调试另一个问题时,我遇到了 this article这似乎显示了一个不同的结构:首先创建一个连接,然后启动两个进程,每个进程创建一个到该连接的 channel 并断言两个队列。

我是否应该为每个工作人员创建一个新连接,我是否可以在 Web 和工作人员分开且无法以其他方式通信的环境中实现这一点?

最佳答案

RabbitMQ 连接被认为是长期存在的。如果您的客户共享内存,他们应该共享一个连接。这只是一般性建议。如果您说您的应用程序有 10 个连接,我不知道有什么缺点。如果您有数千个连接,它可能会影响性能并使监控变得更加困难。

直接回答您的问题:

如果您的 worker 是独立的并且不与任何东西共享内存,您别无选择,只能为它创建新的 RabbitMQ 连接。否则重用连接。

关于javascript - 独立的网络和工作进程,是否应该为它们各自打开一个新连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44013934/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com