AMQP 0-9-1 协议扩展
概述
RabbitMQ 实现了一系列 AMQP 0-9-1 规范 的扩展,它们在此页面列出。
一些扩展引入了新的协议方法(操作);另一些则依赖于现有的扩展点,例如 可选的队列参数。
发布
消费
- 消费者取消通知 让消费者知道它是否已被服务器取消。
basic.nack扩展了basic.reject以支持一次拒绝多条消息。- 消费者优先级 允许您优先向优先级更高的消费者发送消息。
- 直接回复到 允许 RPC 客户端接收对其查询的回复,而无需声明队列。
消息路由
消息生命周期
- 每个队列的消息 TTL 确定一条未被消费的消息在队列中可以存活多久,然后才会被自动删除。
- 每条消息的 TTL 确定每条消息的 TTL。
- 队列 TTL 确定一个未使用的队列可以存活多久,然后才会被自动删除。
- 死信交换机 确保消息在被拒绝或过期后能够被重新路由。
- 队列长度限制 允许设置队列的最大长度。
- 优先级队列 支持消息优先级字段(以略微不同的方式)。
身份验证和标识
- 服务器会验证 User-ID 消息属性。
- 宣告了适当能力(capability)的客户端可能会从代理处收到显式的 身份验证失败通知。
update-secret用于在凭证可能过期时,能够为活动连接更新凭证。
AMQP 0-9-1 规范差异
AMQP 0-8 中一些已被弃用的功能,在 AMQP 0-9-1 中被重新启用,并引入了几个微小的行为更改,以提高产品的可用性。请参考 规范差异 页面。
还有一个 AMQP 0-9-1 勘误页面,解释了各种