node.js - 如何增加传递确认超时rabbitMQ版本是3.10.1

标签 node.js docker rabbitmq

如何增加传递确认超时rabbitMQ版本为3.10.1

rabbitMQ配置

    rabbitmq:
        hostname: 'prod-rabbitmq'
        image: "rabbitmq:3.10.1-management-alpine"
        container_name: puppeteer-script-rabbitmq
        restart: always
        volumes:
            - ./data/rabbitmq:/var/lib/rabbitmq
            - ./data/rabbitmq:/var/log/rabbitmq
            - ./data/rabbitmq:/var/lib/rabbitmq/mnesia
        ports:
            - "5672:5672"
            - "15672:15672"

操作无导致 channel 异常 precondition_failed: channel 1 上的传送确认超时。使用的超时值:1800000 毫秒。可以配置此超时值,请参阅消费者文档指南以了解更多信息

最佳答案

此功能已在 RabbitMQ 版本 3.8.14 或更高版本中实现。默认设置为 1800000 毫秒(30 分钟)。

当达到此超时时,RabbitMQ 关闭消费者 channel 并将消息返回到源队列。它将被重复地重新发送给消费者,直到被确认为止。

您可以在此处阅读有关如何更改 RabbitMQ 配置和 Consumer_timeout 的更多信息:

https://www.rabbitmq.com/consumers.html#acknowledgement-timeout

关于node.js - 如何增加传递确认超时rabbitMQ版本是3.10.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72283638/

相关文章:

python - 运行 celery 任务时如何取消确认消息?

node.js - Nodejs 中组合多个可读流的策略

javascript - node.js + EJS + 在 <% 标签内使用 javascript

javascript - 在nightmarejs中有一个foreach方法吗?

javascript - 如何使用 Nodejs 中的 Agenda 在未来的某个日期时间运行类似 cron 的作业

node.js - 在 Firebase Function 和 Cloud Run 之间共享代码

docker - 无法通过 X509Store 访问自签名 CA

java - RabbitMQ 中消息如何传递给消费者

rabbitmq - 消息代理 - .NET Core 中的多供应商架构

asp.net - 无法使用 docker-compose 连接到 postgresql