【原创】RabbitMQ 之 Queue Length Limit(翻译)
【原创】RabbitMQ 之 Queue Length Limit(翻译)
摩云飞 发表于5年前
【原创】RabbitMQ 之 Queue Length Limit(翻译)
  • 发表于 5年前
  • 阅读 522
  • 收藏 2
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   


Queue Length Limit

The maximum length of a queue can be limited to a set number of messages by supplying the x-max-lengthqueue declaration argument with a non-negative integer value. Queue length is a measure that takes into account ready messages, ignoring unacknowledged messages and message size. Messages will be dropped or dead-lettered from the front of the queue to make room for new messages once the limit is reached.
一个 queue 中消息最大保存量可以在声明 queue 的时候通过设置 x-max-length 参数为非负整数进行指定。Queue 长度的选取需要考量 就绪消息量、被忽略的未确认消息量,以及消息大小。当 queue 中的消息量达到了设定的上限时,为了给新消息腾出空间,将会从该 queue 用于保存消息的队列的前端将“老”消息丢弃或者 dead-lettered 

This example in Java declares a queue with a maximum length of 10 messages:
下面的 Java 示例展示了如何声明一个最多保存 10 条消息的 queue :

Map<String, Object> args = new HashMap<String, Object>();
args.put("x-max-length", 10);
channel.queueDeclare("myqueue", false, false, false, args);

Configuration using policy

To specify a maximum length using policy, add the key "max-length" to a policy definition. For example:
通过 policy 对 queue 的最大长度进行设置,例如可以在 policy 的定义中使用 key “max-length”:

rabbitmqctl
rabbitmqctl set_policy Ten "^short$" '{"max-length":10}' --apply-to queues
rabbitmqctl (Windows)
rabbitmqctl set_policy Ten "^short$" "{""max-length"":10}" --apply-to queues

This applies a maximum length of 10 to the queue called short.
这使得名字叫 short 的 queue 的最大消息保存量被限制在 10 。

Policies can also be defined using the management plugin, s ee the policy documentation for mo re details.
同样可以使用管理插件来指定 policy ,参见  policy documentation 。





标签: RabbitMQ Queue Length
共有 人打赏支持
粉丝 360
博文 352
码字总数 952679
×
摩云飞
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: