307.7. 其他备注


307.7.1. Message Header Format

SJMS 组件使用与 Camel JMS 组件中使用的相同标头格式策略。此插件策略确保通过线路发送的消息符合 JMS Message spec。

对于 exchange.in.header,以下规则适用于标头键:

  • JMSJMSX 开始的密钥被保留。
  • exchange.in.headers 键必须是 literals,且所有是有效的 Java 标识符(不要在键名称中使用点)。
  • 在消耗 JMS 消息时,Camel 替换了点和连字符以及反向:

    • 在 Camel 使用消息时,由 DOT 和反向替换替换。
    • 在 Camel 使用消息时,由 HYPHEN 替换为 HYPHEN,反向替换。
      另请参阅 jmsKeyFormatStrategy 选项,它允许使用您自己的自定义策略格式化密钥。

对于 exchange.in.header,以下规则适用于标头值:

307.7.2. Message Content

若要通过线线提供内容,我们必须确保传输的消息正文遵循 JMS Message Specification。因此,生成的所有操作都必须是原语或其计数器对象(如 IntegerLongCharacter)。type, String,CharSequence,Date,BigDecimalBigInteger 都转换为它们的 toString () 表示。所有其他类型都将被丢弃。

307.7.3. 集群

在集群环境中使用 InOut with SJMS 时,您必须使用 TemporaryQueue 目的地,或使用每个 InOut producer 端点的唯一命名回复。消息关联由端点处理,而不是与代理中的消息选择器处理。InOut Producer Endpoint 使用由 Message JMSCorrelationID 缓存的 Java Concurrency Exchangers。这提供了在减少代理的开销时的一个 nice 性能,因为所有消息都会按照感兴趣的消费者产生的顺序使用。

目前,唯一的关联策略是使用 JMSCorrelationIdInOut Consumer 使用这个策略,同时确保对所含的 JMSReplyTo 目的地的所有响应消息也都会从请求中复制了 JMSCorrelationId

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.