4.5. 使用 AMQ 管理控制台管理代理


您可以使用 AMQ 管理控制台查看有关正在运行的代理的信息,并管理以下资源:

  • 入站网络连接(接受者)
  • addresses
  • 队列

4.5.1. 查看有关代理的详情

要查看代理配置方式,请在左侧菜单中点击 Artemis。在文件夹树中,默认选择本地代理。

在主窗格中,有以下标签页:

状态

显示代理当前状态的信息,如运行时间和集群信息。另外还显示代理当前使用的地址内存量。图中显示这个值作为 global-max-size 配置参数的比例。

图 4.2. Status 标签页

openoffshsh 标签页
连接
显示有关代理连接的信息,包括客户端、集群和桥接连接。
会话
显示有关当前在代理上打开的所有会话的信息。
消费者
显示有关当前在代理上打开的所有消费者的信息。
producers
显示有关当前在代理上打开的制作者的信息。
addresses
显示代理上地址的信息。这包括内部地址,如 storage-and-forward 地址。
队列
显示代理上队列的信息。这包括内部队列,如 store-and-forward 队列。
属性
显示代理上配置的属性的详细信息。
操作
显示您可以从控制台在代理上执行的 JMX 操作。当您点操作时,会打开一个对话框,供您为操作指定参数值。
Chart
显示代理上配置的属性的实时数据。您可以编辑 chart 以指定 chart 中包含的属性。
代理图
显示集群拓扑图。这包括集群中的所有代理,以及本地代理中的任何地址和队列。

4.5.2. 查看代理图

您可以查看拓扑中的所有 AMQ Broker 资源图,包括代理(活跃和备份代理)、生产者和消费者、地址和队列。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在主窗格中,点 Broker 图 选项卡。

    控制台显示集群拓扑图。这包括集群中的所有代理以及本地代理中的任何地址和队列,如图所示。

    图 4.3. 代理图 标签页

    slirpbroker diagram the the the
  3. 要更改图中显示哪些项目,请使用图顶部的复选框。单击 Refresh
  4. 要显示本地代理或连接的地址或队列的属性,请点击图中的节点。例如,下图显示包含本地代理属性的示意图。

    图 4.4. 代理图 标签页,包括属性

    slirpbroker diagram the the the

4.5.3. 查看接受者

您可以查看为代理配置的 acceptors 的详情。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,单击 acceptors
  3. 要查看有关如何配置接受者的详细信息,请点 acceptor。

    控制台显示在 Attributes 选项卡上的对应属性,如图所示。

    图 4.5. AMQP acceptor 属性

    AMQP acceptor 属性
  4. 要查看属性的完整详情,请点属性。此时会打开一个额外的窗口来显示详情。

4.5.4. 管理地址和队列

一个地址代表消息传递端点。在配置中,会指定一个唯一名称的典型地址。

队列与地址关联。每个地址可以有多个队列。传入的消息与地址匹配后,根据配置的路由类型,消息将发送到一个或多个队列。队列可以被配置为自动创建和删除。

4.5.4.1. 创建地址

典型的地址被授予唯一的名称、零个或者多个队列,以及路由类型。

路由类型决定了如何将消息发送到与地址关联的队列。地址可以通过两种不同的路由类型进行配置。

如果您希望消息路由到…

使用此路由类型…

匹配地址中的单个队列,以点对点的方式。

anycast

匹配地址中的每个队列都以发布方式发布。

多播

您可以创建和配置地址和队列,然后在不再使用时删除它们。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,单击 地址
  3. 在主窗格中,点 Create address 选项卡。

    此时会出现一个页面,供您创建地址,如图所示。

    图 4.6. 创建地址页面

    AMQ 管理控制台创建地址
  4. 完成以下字段:

    地址名称
    地址的路由名称。
    路由类型

    选择以下选项之一:

    • 多播 :发送到地址的消息将以发布订阅的方式分发到所有订阅者。
    • anycast :发送到此地址的消息将仅以点到点的方式分发到一个订阅者。
    • 两者 :允许您为每个地址定义多个路由类型。这通常会产生反模式,我们不推荐使用。

      注意

      如果一个地址同时使用两个路由类型,且客户端没有显示首选项,代理会默认使用 anycast 路由类型。一个例外是客户端使用 MQTT 协议时。在这种情况下,默认路由类型是 multicast

  5. 单击 Create Address

4.5.4.2. 发送消息到地址

以下流程演示了如何使用控制台向地址发送消息。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,选择一个地址。
  3. 在主窗格的导航栏中,点 More Send message

    此时会出现一个页面,供您创建信息,如图所示。

    图 4.7. 发送消息页面

    AMQ 管理控制台发送消息
  4. 默认情况下,使用您用来登录到 AMQ 管理控制台的凭证发送消息。如果要使用不同的凭证,请清除 Use current logon user 复选框,并在 UsernamePassword 字段中指定值,它们会在清除复选框后显示。
  5. 如有必要,点 Add Header 按钮来添加消息标头信息。
  6. 输入消息正文。
  7. Format 下拉菜单中选择消息正文格式的选项,然后单击 Format。消息正文使用您选择的格式的人类可读样式格式化。
  8. 单击 Send message

    发送消息。

  9. 若要发送附加消息,可更改您输入的任何信息,然后单击 Send message

4.5.4.3. 创建队列

队列在生成者和消费者之间提供频道。

先决条件

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,选择您要将队列绑定到的地址。
  3. 在主窗格中,单击 Create queue 选项卡。

    此时会出现一个页面,供您创建队列,如图所示。

    图 4.8. 创建 Queue 页面

    AMQ 管理控制台创建队列
  4. 完成以下字段:

    队列名称
    队列的唯一名称。
    路由类型

    选择以下选项之一:

    • 多播 :发送到父地址的消息将分发到绑定到地址的所有队列。
    • anycast :只有一个绑定到父地址的队列将会收到消息的副本。消息将在绑定到地址的所有队列中平均分配。
    durable
    如果您选择这个选项,则队列及其消息将持久。
    Filter
    连接到代理时使用的用户名。
    最大消费者
    在给定时间可以访问队列的最大消费者数。
    没有消费者时清除
    如果选中,则没有用户连接时将清除队列。
  5. 单击 Create Queue

4.5.4.4. 检查队列的状态

chart 提供代理中队列状态的实时视图。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,导航到队列。
  3. 在主窗格中,点 Chart 选项卡。

    控制台显示一个图表,显示所有队列属性的实时数据。

    图 4.9. 队列的 Chart 标签页

    队列的 Chart 标签页
    注意

    要查看地址上多个队列的图表,请选择包含队列的 anycastmulticast 文件夹。

  4. 如有必要,为 chart 选择不同的条件:

    1. 在主窗格中,单击 Edit
    2. Attributes 列表中,选择您要包含在图表中的一个或多个属性。要选择多个属性,请按并存放 Ctrl 键并选择每个属性。
    3. View Chart 按钮。Chart 根据您选择的属性更新。

4.5.4.5. 浏览队列

浏览队列会显示队列中的所有消息。您还可以过滤并排序列表以查找特定消息。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,导航到队列。

    队列位于它们绑定到的地址中。

  3. 在主窗格的导航栏中,点 More Browse queue

    此时会显示队列中的消息。默认情况下会显示前 200 个消息。

    图 4.10. 浏览队列页面

    浏览队列页面
  4. 要浏览特定消息或一组信息,请执行以下操作之一:

    to…​这些以下操作

    过滤消息列表

    Filter…​ 文本字段中输入过滤器条件。点搜索(即,放大)图标。

    排序消息列表

    在消息列表中,点列标头。要降序对消息进行排序,请单击标头第二次。

  5. 要查看消息的内容,请单击 Show 按钮。

    您可以查看消息标头、属性和正文。

4.5.4.6. 发送消息到队列

创建队列后,您可以向其发送一条消息。以下流程概述了向现有队列发送消息所需的步骤。

流程

  1. 在左侧菜单中,单击 Artemis
  2. 在文件夹树中,导航到队列。
  3. 在主窗格中,单击 Send message 选项卡。

    此时会出现用于编写消息的页面。

    图 4.11. 为队列发送消息页面

    将消息发送到队列
  4. 默认情况下,使用您用来登录到 AMQ 管理控制台的凭证发送消息。如果要使用不同的凭证,请清除 Use current logon user 复选框,并在 UsernamePassword 字段中指定值,它们会在清除复选框后显示。
  5. 如有必要,点 Add Header 按钮来添加消息标头信息。
  6. 输入消息正文。
  7. Format 下拉菜单中选择消息正文格式的选项,然后单击 Format。消息正文使用您选择的格式的人类可读样式格式化。
  8. 单击 Send message。发送消息。
  9. 若要发送附加消息,可更改您输入的任何信息,然后单击 Send message

4.5.4.7. 将消息重新发送到队列

您可以重新发送之前发送的消息。

流程

  1. 浏览您要重新发送的消息
  2. 单击您要重新发送的消息旁边的复选框。
  3. Resend 按钮。此时会显示消息。
  4. 根据需要更新 消息标头和正文,然后单击 Send message

4.5.4.8. 将消息移动到不同的队列

您可以将队列中的一个或多个消息移到不同的队列中。

流程

  1. 浏览您要移动的消息
  2. 点击您要移动的每个消息旁边的复选框。
  3. 在导航栏中,点 Move Messages

    此时会出现确认对话框。

  4. 从下拉菜单中,选择要将消息移到的队列的名称。点 Move

4.5.4.9. 删除消息或队列

您可以删除队列或从队列中清除所有消息。

流程

  1. 浏览您要删除的队列,或清除
  2. 执行以下操作之一:

    to…​这些以下操作

    从队列中删除消息

    1. 点击您要删除的每个消息旁边的复选框。
    2. 点击 Delete 按钮。

    从队列中清除所有消息

    1. 在主窗格中的导航栏中,单击 Delete queue
    2. Purge Queue 按钮。

    删除队列

    1. 在主窗格中的导航栏中,单击 Delete queue
    2. 单击 Delete Queue 按钮。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.