4.3. 在流的中间将消息发布到 AMQP 或完成集成


您可以在流的中间发布消息到 AMQP 代理,或者完成简单的集成。为此,请将 AMQP 连接添加到流程中,或作为简单的集成完成连接。

先决条件

  • 您创建了与您要发布消息的 AMQP 代理的连接。
  • 您正在创建或编辑一个流,Fuse Online 正在提示您添加到集成中。或者,Fuse Online 提示您选择简单的集成完成连接。

流程

  1. Add to Integration 页面中,点您要添加连接的加号。如果 Fuse Online 提示您选择完成连接,请跳过这一步。
  2. 点击您要用来发布消息的 AMQP 连接。
  3. 在 Choose a action 页面中,选择以下操作之一:

    • 将消息 发布消息以发布到您指定的队列或主题,而不收到响应。配置这个操作:

      1. Destination name 字段中输入要发送消息的队列或主题的名称。
      2. 对于 Destination 类型,接受 Queue 或选择 Topic
      3. 选择 Persistent 来确保消息交付,即使连接失败。
    • 使用消息 将消息发布到您指定的队列或主题来请求响应。

      注意

      当简单集成中的完成连接是使用 消息操作执行 Request 响应的 AMQP 连接时,连接会发布消息,但会丢弃响应。为避免丢失响应,请添加 AMQP 连接作为中间连接,以使用消息操作执行 Request 响应,然后完成与日志步骤的简单集成。

      配置这个操作:

      1. Destination name 字段中输入要发送消息的队列或主题的名称。
      2. 对于 Destination 类型,接受 Queue 或选择 Topic
      3. Durable 订阅 ID 字段中,要允许连接在没有缺失消息的情况下关闭并重新打开,请输入 durable 订阅 ID。目标类型必须是主题。
      4. Message selector 字段中,如果您想要只接收满足特定条件的响应,请输入过滤器表达式。

        选择器是包含表达式的字符串。表达式的语法基于 SQL92 条件表达式语法的子集。以下示例中的消息选择器选择任何带有值设置为 SportsOpinionNewsType 属性的消息:

        NewsType = 'Sports' or NewsType = 'Opinion'

        消息使用者仅接收标头和属性与消息选择器表达式匹配的消息。邮件选择器无法根据消息正文的内容选择消息。

  4. Next 指定操作的输入和输出类型。
  5. Select Type 字段中,如果数据类型不需要已知,接受 类型规格不需要,然后单击 Next。您不需要遵循其中一些说明的其余部分。

    但是,建议使用结构化数据类型。例如,如果您要在 datamapper 步骤中映射连接输入/输出,则必须指定数据类型。数据映射程序无法显示非结构化数据的字段。

    要指定数据类型,请在 Select Type 字段中选择以下之一作为 schema 类型:

    • JSON 模式是描述 JSON 数据结构的文档。文档的介质类型是 application/schema+json
    • JSON 实例 是包含 JSON 数据的文档。文档的介质类型是 application/json
    • XML 模式是描述 XML 数据结构的文档。文档的文件扩展名是 .xsd
    • XML 实例 是包含 XML 数据的文档。文档的文件扩展名是 .xml
    • CSV 实例 是一个包含以逗号分隔的值(CSV)数据的文档。文档的文件扩展名是 .csv
  6. Definition 输入框中,粘贴符合您选择的模式类型的定义。例如,如果您选择 JSON 模式,则会粘贴 JSON 架构文件的内容,该文件具有介质类型 application/schema+json
  7. Data Type Name 字段中输入您为数据类型选择的名称。例如,如果您要为供应商指定 JSON 模式,则可能会将 Vendor 指定为数据类型名称。

    当您创建或编辑使用您要为其指定此类型的连接的集成时,您将看到此数据类型名称。Fuse Online 在集成视觉化和 data mapper 中显示类型名称。

  8. Data Type Description 字段中,提供可帮助您区分此类型的信息。当您将鼠标悬停在处理此类型的步骤上时,这个描述会出现在 data mapper 中。
  9. 点击 Next

结果

这个连接会出现在您添加的集成视觉化中。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat