搜索

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

download PDF

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

  • 传入网络连接(接收器)
  • addresses
  • 队列

4.5.1. 查看有关代理的详情

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

在主窗格中,提供了以下标签页:

状态

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

图 4.2. 状态标签页

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

4.5.2. 查看代理图

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

流程

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

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

    图 4.3. 代理图 标签页

    *broker diagram* 标签页
  3. 要更改图中显示的项目,请使用图顶部的复选框。单击 Refresh
  4. 要显示本地代理或连接到它的地址或队列的属性,请点击图中的节点。例如,下图显示了也包含本地代理属性的示意图。

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

    *broker diagram* 标签页

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. 在主窗格中,单击 创建地址 选项卡。

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

    图 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 用户 复选框,并在 UsernamePassword 字段中指定值,这些值会在清除复选框后显示。
  5. 如有必要,点 Add Header 按钮添加消息标头信息。
  6. 输入消息正文。
  7. Format 下拉菜单中选择消息正文格式的选项,然后单击 Format。消息正文格式为您选择的格式的人类可读样式。
  8. 单击 Send message

    发送该消息。

  9. 要发送其他消息,请更改您输入的任何信息,然后单击 Send message

4.5.4.3. 创建队列

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

先决条件

流程

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

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

    图 4.8. 创建队列页面

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

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

    选择以下选项之一:

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

4.5.4.4. 检查队列的状态

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

流程

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

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

    图 4.9. 队列的 Chart 标签页

    队列的 Chart 标签页
    注意

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

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

    1. 在主窗格中,单击 编辑
    2. Attributes 列表中,选择要包含在图表中的一个或多个属性。要选择多个属性,请按下并按住 Ctrl 键并选择每个属性。
    3. 单击 View 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 用户 复选框,并在 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. 单击 清除队列 按钮。

    删除队列

    1. 在主窗格的导航栏上,单击 Delete queue
    2. 单击 删除队列 按钮。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.