文档章节

【原创】RabbitMQ 之 Queue Length Limit(翻译)

摩云飞
 摩云飞
发布于 2013/07/03 13:24
字数 390
阅读 716
收藏 2

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>


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 。





© 著作权归作者所有

摩云飞
粉丝 377
博文 534
码字总数 952694
作品 0
徐汇
程序员
私信 提问
加载中

评论(0)

RabbitMQ安装、配置、基本使用

安装 ubuntu下参考:https://www.rabbitmq.com/install-debian.html 启动/关闭: 修改文件打开数量的限制,提高并发性能 命令可查看限制信息: 完成下面的两个步骤,电脑重启才能生效。 1、 ...

樂天
2015/11/10
508
0
rabbitmq 生产环境配置

[tOC] 一 rabbitmq 生产部署 RabbitMQ 常用的三种自定义服务器的通用方法: 配置文件 rabbitmq.conf 环境变量文件 rabbitmq-env.conf 补充配置文件 advanced.config rabbitmq.conf和rabbitm...

osc_khbto5ni
2019/03/06
3
0
RabbitMQ 内存控制 硬盘控制

一、内存控制: vmmemoryhigh_watermark 该值为内存阈值,默认为0.4。意思为物理内存的40%。40%的内存并不是内存的最大的限制,它是一个发布的节制,当达到40%时Erlang会做GC。最坏的情况是使...

andrewniu
2018/05/10
0
0
RabbitMQ 3.6.2 milestone5 发布

RabbitMQ 3.6.2 milestone5 发布了,RabbitMQ 是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成,因此也是继...

淡漠悠然
2016/04/22
1.4K
0
快速掌握RabbitMQ(一)——RabbitMQ的基本概念、安装和C#驱动

1 RabbitMQ简介 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现,官网地址:http://www.rabbitmq.com。RabbitMQ作为一个消息代理,主要负责接收、存储和转发消息,...

osc_urm28qtx
04/16
6
0

没有更多内容

加载失败,请刷新页面

加载更多

面试常考:Java中synchronized和volatile有什么区别?

在我的博客和公众号中,发表过很多篇关于并发编程的文章,之前的文章中我们介绍过了两个在Java并发编程中比较重要的两个关键字:synchronized和volatile 我们简单回顾一下相关内容: 1、Jav...

码农突围
32分钟前
7
0
C++ 支持宏重载效果

C++宏默认是不支持重载的,但可以通过特殊方法让宏支持重载。 可能你要问,支持宏重载有什么用处,那么,就以实例来尝试宏的重载。 为了要实现类的动态创建,我还想构建类的继承关系图,为了...

零落年华
40分钟前
15
0
jenkins添加git源失败

Failed to connect to repository : Command "git ls-remote -h git@192.168.91.11:test/dzp.git HEAD" returned status code 128: stdout: stderr: Permission denied, please try again. P......

muoushi
43分钟前
20
0
如何在ActionScript 3中将“ Null”(真实的姓氏!)传递给SOAP Web服务

问题: We have an employee whose surname is Null. 我们有一个姓为Null的员工。 Our employee lookup application is killed when that last name is used as the search term (which happ......

fyin1314
43分钟前
17
0
事务控制

TxConfig.class /** * 声明式事务 * * 环境搭建 * 1. 引入相关依赖,数据源、数据库驱动,spring-jdbc模块 * 2. 配置数据源、JdbcTemplate(Spring提供的简化数据库操作的工具)操作数据...

与你同行7
54分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部