在本章节中:

关于插件

Rabbit MQ 消息监听器是用于 Parasoft Virtualize 的自定义消息监听器扩展。监听器连接到一个 Rabbit MQ 代理并使用指定队列上的消息。根据操作模式(直通或虚拟化)分别将消息转发给真实后台系统或 Virtualize。该监听器假设发布者使用 ReplyTo 字段来定义将在发送响应时使用的 queue/routing 键。监听器还具有一些选项,以启用动态创建应答队列,或使用预定义的应答队列。

实现

Rabbit MQ 消息监听器实现为 com.parasoft.virtualize.listener.rabbitmq-<version>.jar,其取决于 Rabbit MQ AMQP 客户机 5.2.0(amqp-client-5.2.0.jar)。此依赖关系与发行版一起打包。

安装指南

可以从 UI 或命令行中安装此工具。

UI 安装指南

  1. 选择 Parasoft> Preferences


     
  2. 在系统属性首选项页面,单击 Add JARs


     
  3. 在打开的文件选择器中,选择 com.parasoft.virtualize.listener.rabbitmq-<version>.jar。一旦此 jar 文件添加到类路径中,将加载所有必需的依赖项。
  4. 重启 Virtualize。

命令行安装指南

将 com.parasoft.virtualize.listener.rabbitmq-<version>.jar 文件添加到 localsettings 属性文件中的 system.properties.classpath 属性。

例如:

system.properties.classpath=<path to jar>/com.parasoft.virtualize.listener.rabbitmq-1.0.1.jar

一旦路径完成更改,将加载所有必需的依赖项。

使用说明

使用该监听器需要在 Rabbit MQ 服务器上进行其他配置。

标准配置

以上是标准的 Rabbit MQ 配置。发布者通过交换发布消息。然后,交换器将消息路由到使用者正在侦听的适当消息队列。然后,使用者处理消息,并通过默认交换将响应传递给发布者定义的应答队列。为了在配置中包括 Virtualize,交换队列和消息队列应该在具有相同配置的相同虚拟主机中复制(除了名称)。

一旦配置了其他交换和消息队列,那么要么出版商必须被指向新的交易所,要么使用者必须被指向新的消息队列,以便 Virtualize 可以充当中间人,将消息转发给消费者的消息队列或消息转发到虚拟化资产为虚拟反应和直接响应出版商。

发布者虚拟配置

使用者虚拟配置

在服务器上配置了其他组件并且在 Virtualize 中安装了监听器之后,它可以在虚拟资产配置面板中选择并配置。

在 Virtualize 服务器视图中,选择要用于自定义消息监听器的虚拟资产,然后导航到虚拟资产部署设置中的 Transports> Custom 。如果安装了多个监听器,请使用 Select Implementation 下拉菜单来选择 com.parasoft.virtualize.listener.rabbitmq.RabbitMQListener。

可以配置以下设置。

配置连接设置

选项

说明

Hostname

定义 Rabbit MQ 服务器的主机名。如果字段为空,则将使用默认值 localhost

Port

定义 Rabbit MQ 服务器的端口。如果字段为空,则将使用默认的 Rabbit MQ 端口。

Use SSL当连接到 Rabbit MQ 服务器时,将该选项设置为 true 。默认为 false

Username

定义 Rabbit MQ 用户名。

Password

定义 Rabbit MQ 密码。

Virtual Host Name

定义要连接的 Rabbit MQ 虚拟主机。

Automatic Connection Recovery

如果监听器试图从连接失败中自动恢复,则将该选项设置为 true 。默认为 true

Topology Recovery

如果监听器试图从拓扑故障中自动恢复,则将该选项设置为 true 。默认为 true

配置监听器设置

选项

说明

Listener Mode

可以指定 passthroughvirtualize 模式。

转移模式将监听队列上的消息以转发交换器的名称转发给交换器。

虚拟化模式将监听队列上的消息转发给 Virtualize 以生成虚拟响应。

Listen Queue

定义 Virtualize 将使用哪个队列的消息。

Auto Ack

如果监听使用者应自动确认其处理的消息,则将该选项设置为 true如果设置为 false ,这些消息必须以不同的方式进行确认,否则它们将保留在队列中。

Consumer Tag

定义从队列消费时要使用的消费者标记。

Forward Exchange Name

定义在监听队列上的消息时要使用的交换。该字段仅在转义模式下使用。

配置 ReplyTo 设置

选项

说明

ReplyTo Exchange定义应答时使用的交换。该字段仅在虚拟模式下使用。

Generate ReplyTo Queue

如果监听器应该在发布响应之前生成应答队列,则将该选项设置为 true该字段仅在虚拟模式下使用。

ReplyTo Queue Durability

如果对队列的应答应该是持久的,则将其设置为 true 。持久队列是一个将持久化服务器重启的队列。该字段仅在 Generate ReplyTo Queue 设置为 true时,在虚拟模式下使用。

Autodelete ReplyTo Queue

如果应答队列应该自动被删除,则将其设置为 true 。在使用队列上的所有消息之后,自动删除队列。该字段仅在 Generate ReplyTo Queue 设置为 true时,在虚拟模式下使用。

配置日志设置

选项

说明

Log Level

设置监听器的日志级别。可接收以下值:

1 - 错误

2 - 警告

3 - 信息

4 - 调试

默认为 3



  • No labels