本文介绍了如何创建和管理用于 Spark 消息传递的队列。您可以了解有关开发人员门户中的 Spark 消息传递的更多信息。

访问 Spark 队列管理

管理 > 连接 > Spark 队列查看和管理队列。您必须拥有授予管理:队列权限的安全配置文件才能使用队列。

如何创建 Spark 队列

要创建新队列:

  1. Spark 队列页面中,单击创建
  2. 为此队列输入标签。这是在 Vault UI 中向管理员显示的标签。
  3. Vault 会自动填充名称字段。这是从 Vault Java SDK 代码调用该队列时的队列名称。字符之间只允许使用小写字母、字母数字字符和下划线 (_)。
  4. 为此队列选择状态。只有活动队列可以接受消息。
  5. 可选:为此队列输入描述
  6. 选择队列类型。如果您希望此队列发送消息,请选择出站。如果您希望此队列接收消息,请选择入站
  7. 如果您的队列类型入站,请选择 Spark 消息处理器。这些是使用 Vault Java SDK 创建的自定义 Vault 扩展,旨在处理消息。您可以在 Vault 的管理 > 连接 > Spark 消息处理器中查看 Spark 消息处理器的详细信息。
  8. 如果您的队列类型入站,请选择 Spark 消息处理器用户。该用户将处理传递到此队列的消息。
  9. 可选:如果您的队列类型出站,请选择 Spark 消息传递事件处理程序Spark 消息传递处理程序用户。了解开发人员门户中的 Spark 消息传递事件处理程序
  10. 可选:如果必须按顺序处理要发送到此队列的消息,即按接收顺序一条接一条地处理,请选择按顺序处理消息。通常不建议选择此选项,因为它会导致消息积压在队列中并减慢传递速度。
  11. 可选:当消息未能进入队列时如果您希望此队列继续处理事务,请取消选择出错时回滚。否则,若未能将消息放入此队列,将回滚整个事务。
  12. 单击保存

创建队列后,您可能想要添加队列连接。了解有关创建连接的更多信息。

管理队列连接

如果队列附加到连接,它将显示在队列的详细信息页面的队列连接节段下。此节段显示与队列连接相关的各种详细信息,例如连接类型URL连接名称

详细信息页面中,可以创建更多队列连接,或从操作菜单中查看编辑删除此队列上的现有连接。

如何停用 Spark 队列

如果您希望 Spark 队列停止接收消息,必须将队列状态设置为非活动。设置为非活动后,队列无法接受任何新消息。

这不会阻止队列处理已经在队列中的消息。例如,如果在停用出站队列之前该队列中已有消息,则仍会发送这些消息。如果您希望停止发送队列中已经存在的消息,则必须禁用传递

要停用队列:

  1. 在队列详细信息页面中,单击编辑
  2. 状态设置为非活动
  3. 单击保存

非活动队列将立即停止接受消息。如果您想重新激活此队列,则可以使用相同的流程来执行此操作。一旦队列处于活动状态,将再次开始接受消息。

如何禁用传递

如果您希望出站 Spark 队列停止传递现有消息,则必须禁用该队列。这样可以阻止任何消息离开队列,但不会阻止新消息进入队列。例如,传递状态设置为已禁用活动队列仍将允许新消息进入队列,但没有任何消息会离开队列。

要禁用队列:

  1. 导航到您希望禁用传递的出站队列。
  2. 操作菜单中,选择禁用传递
  3. 该队列现已禁用。在队列详细信息中,传递状态现在显示为已禁用

如果您希望此队列再次开始传递消息,可以使用相同的流程启用该队列。

此选项不适用于入站队列,因为入站队列处理接收到的消息而不是传递消息。无法阻止入站队列处理现有消息。如果您有入站队列,其中包含您不想处理的现有消息,则必须重置该队列

如何删除 Spark 队列中的所有消息

即使更改队列的状态传递状态,也不会删除该队列中的任何消息。例如,传递状态设置为已禁用非活动队列无法发送或接收消息,但队列中的任何消息仍然存在。如果您不再需要这些消息,可以重置队列。

此操作为永久操作,不可撤销。

要重置队列:

  1. 导航到您要重置的队列。
  2. 单击重置队列
  3. 阅读警告后,单击继续
  4. 该流程完成后,您将收到绿色横幅通知,表明 Vault 已成功重置队列。