本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
插件
适用于 RabbitMQ 的亚马逊 MQ 还支持以下插件。
RabbitMQ 管理插件
适用于 RabbitMQ 的亚马逊 MQ 支持 RabbitMQ 管理插件,该插件为 RabbitMQ
Shovel 插件
适用于 RabbitMQ 的 Amazon MQ 支持 R abbitMQ 铲子插件,该插件
重要
如果 shovel 目标是私有代理,则无法在队列或交换器之间配置 shovel。
Amazon MQ 不支持使用静态 shovel。
仅支持动态铲子
/api/parameters/shovel/{vhost}/{name}
在请求体中,您必须指定队列或交换器,但不能同时指定两者。以下示例在 src-queue 中指定的本地队列和 dest-queue 中定义的远程队列之间配置了动态铲子。同样,你可以使用 src-exchange 和 dest-exchange 参数在两个交换之间配置铲子。
{ "value": { "src-protocol": "amqp091", "src-uri": "amqp://localhost", "src-queue": "source-queue-name", "dest-protocol": "amqp091", "dest-uri": "amqps://b-c8352341-ec91-4a78-ad9c-a43f23d325bb.mq.us-west2.amazonaws.com:5671", "dest-queue": "destination-queue-name" } }
联合插件
亚马逊 MQ 支持使用 Rabbit
您可以使用联合允许下游代理使用来自上游的交换器或队列的消息。您可以使用 RabbitMQ Web 控制台或管理 API 在下游代理上启用联合。
重要
如果上游队列或交换器位于私有代理中,则无法配置联合身份验证。只能在公有代理中的队列或交换器之间,或在公有代理中的上游队列或交换器与私有代理中的下游队列或交换器之间配置联合身份验证。
例如,通过管理 API,您可以执行以下操作来配置联合。
-
配置一个或多个定义到其他节点的联合连接的上游。您可以使用 RabbitMQ Web 控制台或管理 API 定义联合连接。使用管理 API,您可以使用以下请求正文向/ api/parameters/federation-upstream/%2f/myupstream 创建一个 POST 请求。
{"value":{"uri":"amqp://server-name","expires":3600000}} -
配置策略以使您的队列或交换器联合。您可以使用 RabbitMQ Web 控制台或管理 API 配置策略。使用管理 API,您可以使用以下请求正文向/api/policies/%2f/federate-me 创建 POST 请求。
{"pattern":"^amq\.", "definition":{"federation-upstream-set":"all"}, "apply-to":"exchanges"}注意
请求正文假设服务器上的交换以 amq 开头命名。使用正则表达式 ^amq\. 将确保所有名称以 “amq” 开头的交易所启用联合。您的 RabbitMQ 服务器上的交换器可以不同的名称命名。
一致性哈希交换器插件
适用于 RabbitMQ 的亚马逊 MQ 支持 RabbitMQ 一致哈希交换类型插件
对于绑定到一致哈希交换的队列,绑定密钥用于确定每个队列的绑定权重。 number-as-a-string具有较高绑定权重的队列将从与之绑定的一致性哈希交换中接收分配比例更高的消息。在一致性哈希交换拓扑中,发布者可以简单地将消息发布到交换中,但必须将使用者明确配置为使用来自特定队列的消息。
OAuth 2.0 插件
适用于 RabbitMQ 的亚马逊 MQ 支持 2 身份验证后OAuth 端插件。
LDAP插件
适用于 RabbitMQ 的亚马逊 MQ 支持 LDAP 身份验证后端插件。
HTTP 插件
适用于 RabbitMQ 的亚马逊 MQ 支持 HTTP 身份验证后端插件。
注意
HTTP 身份验证插件仅适用于适用于 RabbitMQ 版本 4 及更高版本的亚马逊 MQ。
SSL 证书插件
亚马逊 MQ 支持 RabbitMQ 经纪商的双向 TLS (mTLS)。SSL 身份验证插件
注意
SSL 证书身份验证插件仅适用于适用于 RabbitMQ 版本 4 及更高版本的亚马逊 MQ。
aws 插件
根据您的代理配置,亚马逊 MQ 有条件地为 RabbitMQ 启用 aws 插件