308.7. 其他备注


308.7.1. 消息标头格式

SJMS2 组件使用与 Camel JMS 组件中使用的相同标头格式策略。此可插入的策略确保通过 wire 发送的消息符合 JMS Message 规格。

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

  • JMSJMSX 开头的键被保留。
  • exchange.in.headers 键必须是 literals,且所有为有效的 Java 标识符(请勿在键名称中使用点)。
  • 当使用 JMS 消息时,Camel 替换了点 & hyphens 和 reverse:

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

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

308.7.2. 消息内容

要通过线路传递内容,我们必须确保所发送的消息正文遵循 JMS 消息规格。因此,生成的所有对象都必须是原语或其计数器对象(如 IntegerCharacter)。Type, String,CharSequence,Date,BigDecimalBigInteger 都转换为其 toString () 表示。所有其他类型都会被丢弃。

308.7.3. 集群

当在集群环境中使用 InOut 和 SJMS2 时,您必须使用 TemporaryQueue 目的地,或者使用每个 InOut producer 端点对目的地的唯一命名回复。消息关联由端点处理,而不是代理上的消息选择器。InOut Producer Endpoint 使用由消息 JMSCorrelationID 缓存的 Java Concurrency Exchangers。这可提高 nice 性能,同时减少代理上的开销,因为所有消息都会按照对消费者生成的顺序从目的地使用。

目前,唯一的关联策略是使用 JMSCorrelationIdInOut Consumer 也使用此策略,确保包含的 JMSReplyTo 目的地的所有响应消息也从请求中复制了 JMSCorrelationId

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.