You need to enable JavaScript to run this app.
导航
RabbitMQ Policy 使用实践
最近更新时间:2025.03.14 15:31:17首次发布时间:2025.03.14 15:31:17
我的收藏
有用
有用
无用
无用

本文介绍 RabbitMQ Policy 的使用方式及使用示例。

方案概述

RabbitMQ 中 Policy(策略)是一种机制,可以很方便的用来自动化地为队列、交换机等应用特定的配置或行为。Policy 通常基于正则表达式来选择目标对象,然后为它们应用配置参数。从而实现自动的化的大规模的集群配置管理。

添加 Policy 操作步骤

  1. 登录 RabbitMQ 控制台。
  2. 单击 Admin 页签,然后单击 Add / update a policy,添加一条 Rabbitmq Policy,Policy 参数说明如下。

Image

参数

说明

Name

策略名称。

Pattern

正则表达式所定义的匹配模式。

Apply to

策略的生效范围,支持 Exchanges 或者 Queues

Priority

策略优先级,数字越大优先级越高。

Definition

策略参数。

注意

RabbitMQ Web 控制台中,Definition 最下面一行始终为空白参数栏。

示例一:通过 Policy 删除全部 Queue

注意

如果队列有生产和消费,即便配置 Policy,队列也不会被删除。

Image
示例参数如下:

参数

说明

Virtual host

策略所应用的 vhost 生效范围(当存在多个 vhost 时显示此参数)。

Name

策略的名称,自定义设置。

Pattern

.* (表示匹配所有的队列)。

Apply to

选择 Queues

Priority

策略的优先级,自定义设置。

Definition

Number 类型的 expires 参数,取值为 1,表示 1ms 后队列过期。

示例二:通过 Policy 配置默认镜像队列

注意

生产环境请谨慎开启。

Image
示例参数如下:

参数

说明

Virtual host

策略所应用的 vhost 生效范围(当存在多个 vhost 时显示此参数)。

Name

策略的名称,自定义设置。

Pattern

.* (表示匹配所有的队列)。

Apply to

选择 Queues

Priority

策略的优先级,自定义设置。

Definition

可按照以下示例设置:

  • String 类型的 ha-mode 参数,取值为 all。
  • **(可选)**如果只想在固定数量的节点上配置镜像,可以新增以下参数:
    • Number 类型的 ha-params 参数,取值为 2
    • String 类型的 ha-sync-mode 参数,取值为 automatic