更新时间:2024-10-29 GMT+08:00

开启RabbitMQ实例插件

RabbitMQ实例创建后,支持通过插件的方式开启附加功能,实例创建后插件默认都是关闭状态。

RabbitMQ插件功能可用于测试和迁移业务等场景,不建议用于生产业务。因使用插件导致的可靠性问题,不在服务承诺的SLA范围内。详情请参考产品介绍 > 约束与限制

RabbitMQ支持的插件如表1所示。其中,插件端口号不支持修改

表1 插件列表

插件名称

功能描述

端口号

rabbitmq_amqp1_0

表示实例是否支持AMQP1.0协议。

-

rabbitmq_delayed_message_exchange

表示实例是否开启消息延迟功能。

插件延迟时间存在1%左右的误差,可能提前或者推迟发送消息给消费者。

-

rabbitmq_federation

表示实例是否开启消息同步功能。

-

rabbitmq_sharding

表示实例是否开启消息分片功能。

-

rabbitmq_shovel

表示实例是否开启消息迁移功能。

-

rabbitmq_tracing

表示实例是否开启消息追踪功能。

-

rabbitmq_mqtt

表示实例是否支持MQTT协议(TCP方式)。

1883

rabbitmq_web_mqtt

表示实例是否支持MQTT协议(WebSocket方式)。

15675

rabbitmq_stomp

表示实例是否支持STOMP协议(TCP方式)。

61613

rabbitmq_web_stomp

表示实例是否支持STOMP协议(WebSocket方式)。

15674

rabbitmq_consistent_hash_exchange

表示实例是否支持x-consistent-hash。开启此插件后,可以创建x-consistent-hash类型的Exchange。

-

约束与限制

  • 开启插件过程中,不会重启实例,但是以下插件(rabbitmq_mqtt、rabbitmq_web_mqtt、rabbitmq_stomp、rabbitmq_web_stomp)会重启keepalived,导致连接断开。连接断开后,是否会自动重连依赖于用户自身的业务逻辑。
  • rabbitmq_shovel、rabbitmq_federation和rabbitmq_tracing插件在特定场景下才支持开启,具体如表2所示。
    表2 支持开启插件的场景

    实例

    rabbitmq_shovel

    rabbitmq_federation

    rabbitmq_tracing

    未开启SSL的单机实例

    支持

    支持

    支持

    已开启SSL的单机实例

    不支持

    不支持

    不支持

    未开启SSL的集群实例

    不支持

    支持

    支持

    已开启SSL的集群实例

    不支持

    不支持

    不支持

开启RabbitMQ实例插件

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    此处请选择RabbitMQ实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用服务 > 分布式消息服务 RabbitMQ”,进入分布式消息服务RabbitMQ专享版页面。
  4. 单击待开启插件的实例名称,进入实例详情页面。
  5. 在“插件管理”页签,单击待开启插件后的“开启”。

    确认开启后,等待实例插件开启成功。