问题标签 [node-amqplib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 在 amqplib 连接上配置套接字超时
我正在运行一个由 2 个 RabbitMQ 服务器(可以是任意数量)组成的集群,并且我已经实现了故障转移,我的应用程序会循环 RabbitMQ 列表并在连接断开时尝试重新连接。
如果我尝试连接的 RabbitMQ 实例已关闭,则在尝试连接下一个实例之前大约需要 60 秒超时,这是一个很长的时间。有没有办法配置超时或其他方式让它更快地失败。这会导致不必要的长时间停机。心跳负责检测现有连接上的故障,但问题在于初始连接尝试。
这是我用于连接的代码:
node.js - 无法通过 nodejs 客户端连接到 rabbitmq 代理
我正在使用 amqplib 创建 amqp 客户端。它在本地主机上运行时工作正常,但是当我将其更改为服务器的 IP 地址 192.168.1.44 时,我收到一个错误,表明 conn 对象未定义。
这是客户的代码
这是错误信息
javascript - 为什么带有 amqplib 消费功能的 nodejs 是闭包?
我使用nodejs amqplib 模块连接rabbitmq。我发现consume函数变成了一个闭包函数,但我不明白为什么。我没有使用闭包。
我的代码如下。我发现returnOK中的corr仍然获得了第一次值。当我第二次触发此功能时。corr 仍然是第一次的值。我认为这很奇怪。有人可以解释一下吗?
node.js - 发布后关闭 amqp promise 连接?
我正在尝试在发布消息后如何关闭基于承诺的连接。
我试图推断出我的发送者和接收者的共享代码,所以我有一个这样的连接文件:
连接器.js
然后我的发布者/发件人看起来像这样:
发布者.js
但如前所述,我无法弄清楚如何在调用publish()
.
rabbitmq - node-amqp,限制监听事件的套接字时间
假设我喜欢我的 rabbitmq 队列上的 100000 个事件,那么限制系统串联处理它们而不是尝试一次消耗所有事件的最佳方法是什么?
我正在尝试几个选项,但是,机器冻结试图一次处理它们。
node.js - 当队列太大时,可以在 nodejs 中使用 amqplib 丢弃rabbitmq 消息吗?
我amqplib
在 nodejs 应用程序中使用。前端有一些繁重的处理会导致接收rabbitmq消息时出现一些延迟。当使用 监控我的队列时rabbitmqctl list_queues
,等待处理的消息数量永远不会停止攀升。
有没有办法设置我的频道以便在队列有给定数量的消息等待时丢弃消息?
以下是我设置频道的方式:
javascript - Javascript RabbitMQ -> 拉取单个消息
我正在尝试从rabbitmq 中提取一条消息,对其进行处理并确认该单条消息。在确认将消息从队列中拉出后,我不希望它继续。如果我在下面的代码中不执行 ch.close(),它会在确认上一条消息后继续提取消息。
使用 docker RabbitMQ 实例,我设置了此代码(有效),但我很好奇快速打开/关闭通道是否是执行此操作的最佳方法:
node.js - nodejs 和 rabbitmq 应用程序,我是否绕过 rabbit 连接
我正在创建一个新的nodejs服务,它将接收来自前端的请求,将该请求放在rabbitmq上,然后等待来自处理该请求的微服务的响应,然后将响应发送回我从请求返回的前端兔子。
我的问题是当我创建到 rabbitmq 的连接时,比如
最好在 app.js (顶层)中创建此连接并将此连接向下传递到每个请求的外部模块,还是我应该创建一个新连接并提交并等待每个请求?
感谢您的任何建议
rabbitmq - 如何理解 rabbitmqctl 命令的输出
rabbitmqctl 的输出如下所示。我无法弄清楚每列的含义。我怎样才能看到每列的含义?
node.js - 订阅队列时出错
我的后端将消息推送到 rabbitmq 队列,我需要获取这些消息以显示在消息的前端部分,因为消息必须按特定顺序排列,我不能使用异步方法。
我写了这段代码
但我收到此错误: