当前位置: 首页 > 知识库问答 >
问题:

是否将节点RED连接到RabbitMQ优先级队列?

贲文景
2023-03-14

我有一个用以下选项声明的RabbitMQ队列:

{
    "queue": "events/online",
    "durable": true,
    "args": {
        "x-max-priority": 10
    }
}

我试图从Node-RED连接到队列,使用node-red-contrib-amqp插件,在连接源下设置了以下拓扑:

{
    "queues": [
        {
            "name": "events/online",
            "durable": true,
            "options": {
                "x-max-priority": 10
            }
        }
    ]
}

我得到以下错误:

“AMQP输入节点断开连接错误:操作失败:QueueDeclare;406(Premission-failed),消息为“Premission_failed-vhost中队列'myqueue'的参数'x-max-priority'不相等”:未收到任何,但current是'signedint'类型的值'10'”

共有1个答案

太叔鹏云
2023-03-14

原来答案如下。

确保选中以下复选框:“使用下面定义的AMQP拓扑定义(JSON)”

{
    "queues": [
        {
            "name": "events/online",
            "durable": true,
            "options": {
                "maxPriority": 10
            }
        }
    ]
}
 类似资料:
  • 我有2个RabbitMQ队列: = 正如您对其名称所设想的那样,队列使用死信交换功能,这意味着当消息过期时,它将被重新调用到我的。 我试图实现的是在每次处理失败并将消息推送到DLX队列时增加消息的。 问题是,即使消息过期,当它不在队列的底部(头部)时,它也不会请求我的。因此,如果DLX队列中有到期时间为7天的消息,并且我们将到期时间为5秒的新消息加入队列,则该消息将仅在7天5秒后请求到。... 我

  • 在谷歌搜索了几天之后,我相信我完全迷路了。我想实现一种优先级队列,它大约有3个队列: 高优先级队列(每日),需要先处理 中等优先级队列(每周),如果队列#1中没有项目,将进行处理。(此队列中的ok消息根本不处理) 低优先级队列(每月),如果队列#1中没有项目,将进行处理 最初,我有以下流程,让消费者使用所有三个队列中的消息,并检查队列#1、#2和#3中是否有任何项目。然后我意识到这是错误的,因为:

  • 在我的python应用程序中,我使用芹菜作为任务生产者和消费者,使用RabbitMQ作为代理。现在,我正在实施优先级排序。起初,它看起来根本不起作用,因为根据文档,我刚刚在队列中添加了参数。我更深入地研究了一下,发现了另一种优先级——消费者优先级和任务优先级。所以,现在,看起来有三种不同的优先顺序,我完全困惑了。你能给我解释一下区别吗? 队列最大优先级:即https://www.rabbitmq.

  • 这些天,我阅读了一些关于和的文档。我了解到Javascript是一个单线程,每次只会执行一段代码。同时,如果有事件发生,它会被推送到事件队列中并阻塞,直到适当的时间。我想知道,当许多事件被阻塞等待同时执行时。这些事件是否具有不同的优先级,因此高优先级事件会在低优先级事件之前执行。或者只是一个FIFO队列。 在上面的代码中,setTimeout fn1将在10 ms发生,Click事件处理程序fn2

  • 我需要一个优先级队列,它首先获得具有最高优先级值的项目。我当前正在使用队列库中的PriorityQueue类。但是,这个函数只先返回值最小的项。我尝试了一些很难看的解决方案,比如(sys.maxint-priority)作为优先级,但我只是想知道是否存在更优雅的解决方案。

  • 主要内容:9. RabbitMQ 其他知识点,9.1 幂等性,9.2 优先级队列,9.3 惰性队列9. RabbitMQ 其他知识点 9.1 幂等性 9.1.1 概念 用户对于统一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生副作用 举个栗子,用户购买商品后支付,支付扣款成功,但是返回结果的时候网络异常,此时钱已经扣了,用户再次点击按钮,会进行第二次扣款,返回结果依然成功。用户查询余额发现多扣钱了,流水记录也变成了两条。 在以前的但应用系统中,我们只需要把数据操作放入事务