【问题标题】:RabbitMQ default max lenth in queueRabbitMQ 队列中的默认最大长度
【发布时间】:2018-01-21 09:57:27
【问题描述】:

我是 rabbit 的新手,需要帮助设置队列中的默认最大消息数。这个想法是一个发布者发送消息。所有订阅者都会收到所有消息。我通过为订阅者创建不同的队列来做到这一点......这没问题。但是,当发布者发送消息并且订阅者离线时,消息存储在队列中,订阅者回来后,他会收到所有存储的消息。因此,如果现在无法传递消息,我希望所有队列都不要存储消息。

我使用的是 windows 版本的 rabbitmq 3.7.2

尝试使用 rabbitmqctl.bat set_policy my-pol "" "{""max-length"":1,""overflow"":""reject-publish""}" --apply-to 队列等策略 并且没有足够的参数错误

【问题讨论】:

    标签: rabbitmq


    【解决方案1】:

    你有两种方法可以做到这一点,它们的组合也可能对你有用:

    • 将队列属性durable 设置为false 并将auto-delete 设置为true。这样,一旦您的客户端断开连接,队列就会自动删除。

    • 如您所述,设置max-length 策略:

      rabbitmqctl set_policy my-pol ".*" '{"max-length":1,"overflow":"reject-publish"}' --apply-to queues

      这里的第二个参数是regex,它应该与队列匹配,所以我猜这就是 RMQ 抱怨丢失的原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 2014-08-03
      • 1970-01-01
      • 2022-10-18
      • 1970-01-01
      相关资源
      最近更新 更多