控制多点广播消息的大小
请使用这些信息来了解 IBM® MQ 邮件格式,并缩小 IBM MQ 邮件的大小。
IBM MQ 消息具有许多与它们相关联的属性,这些属性包含在消息描述符中。 对于小型消息,这些属性可能表示大部分数据流量,并可能对传输速率产生重大不利影响。 IBM MQ 多点广播使用户能够配置随消息一起传输的属性 (如果有)。
消息属性 (主题字符串除外) 的存在取决于 COMMINFO 对象是否声明必须发送这些属性。 如果未传输属性,那么接收应用程序将应用缺省值。 MQMD 的默认值不一定与 MQMD_DEFAULT 值相同,如表 1 所示。
COMMINFO 对象包含 MCPROP 属性,用于控制随消息一起流动的 MQMD 字段和用户属性的数量。 通过将此属性的值设置为适当的级别,可以控制 IBM MQ 多点广播消息的大小:
- MCPROP
- 多点广播属性控制随消息一起流动的 MQMD 属性和用户属性数量。
- 全部
- 传输 MQMD 的所有用户属性和所有字段。
- REPLY
- 将仅传输用户属性和处理消息应答的 MQMD 字段。 这些属性包括:
- MsgType
- MessageId
- CorrelId
- ReplyToQ
- ReplyToQmgr
- 用户
- 将仅传输用户属性。
- NONE
- 将不会传输任何用户属性或 MQMD 字段。
- COMPAT
- 此值导致以兼容方式将消息传输到 RMM,这允许与当前 XMS 应用程序和 IBM Integration Bus RMM 应用程序进行某些互操作。
多点广播消息属性
消息属性可以来自各种位置,例如 MQMD , MQRFH2中的字段以及消息属性。
下表显示了根据 MCPROP 值 (此部分中先前描述) 发送消息时发生的情况,以及未发送属性时使用的缺省值。
| 属性 | 使用多点广播时的操作 | 缺省值 (如果未传输) |
|---|---|---|
| TopicString | 始终包含 | 不适用 |
| MQMQ StrucId | 未传输 | 不适用 |
| MQMD 版本 | 未传输 | 不适用 |
| 报告 | 包含 (如果不是缺省值) | 0 |
| MsgType | 包含 (如果不是缺省值) | MQMT_DATAGRAM |
| 到期 | 包含 (如果不是缺省值) | 0 |
| 反馈 | 包含 (如果不是缺省值) | 0 |
| 编码 | 包含 (如果不是缺省值) | MQENC_NORMAL (单元) |
| CodedCharSetId | 包含 (如果不是缺省值) | 1208 |
| 格式 | 包含 (如果不是缺省值) | MQRFH2 |
| Priority | 包含 (如果不是缺省值) | 4 |
| 持久 | 包含 (如果不是缺省值) | MQPER_NOT_PERSISTENT |
| MsgId | 包含 (如果不是缺省值) | Null |
| CorrelId | 包含 (如果不是缺省值) | Null |
| BackoutCount | 包含 (如果不是缺省值) | 0 |
| ReplyToQ | 包含 (如果不是缺省值) | Blank |
| ReplyToQMgr | 包含 (如果不是缺省值) | Blank |
| UserIdentifier | 包含 (如果不是缺省值) | Blank |
| AccountingToken | 包含 (如果不是缺省值) | Null |
| PutAppIType | 包含 (如果不是缺省值) | MQAT_JAVA |
| PutAppIName | 包含 (如果不是缺省值) | Blank |
| PutDate | 包含 (如果不是缺省值) | Blank |
| PutTime | 包含 (如果不是缺省值) | Blank |
| ApplOriginData | 包含 (如果不是缺省值) | Blank |
| GroupID | 已排除 | 不适用 |
| MsgSeqNumber | 已排除 | 不适用 |
| 偏移量 | 已排除 | 不适用 |
| MsgFlags | 已排除 | 不适用 |
| OriginalLength | 已排除 | 不适用 |
| UserProperties | 已包含 | 不适用 |
![[已除去]](../common/../administer/ngremoved.gif)