1 / 9
文档名称:

mq消息头详细介绍.docx

格式:docx   大小:28KB   页数:9页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

mq消息头详细介绍.docx

上传人:jiyudian11 2022/4/28 文件大小:28 KB

下载得到文件列表

mq消息头详细介绍.docx

文档介绍

文档介绍:: .
细看MQ消息头(MQMD)的功能
MQMD是每个消息都带有的消息头信息,它由若干字段组成,这些字为空,表示返回消息时到本地队列管理器中去找ReplyToQ。
Userldentifier:它属于MQMD的identitycontext字段,是发起消息的应用程序的用户标识。其默认值为空。
AccountingToken:它属于MQMD的identitycontext字段,允许应用程序计算由消息引起的工作量的信息。其默认值为空。
ApplldentityData:它属于MQMD的identitycontext字段,是由应用程序定义的信息,可用来提供有关消息或其发起方的信息。其默认值为空。应用的请求和服务端可以进行协商,规定这个字段的一些专门用途,通过这个字段,来实现一定的自动化处理。
PutApplType:它属于MQMD的origincontext字段,是放入消息的应用程序类型,标志在一个消息传递串中最近的对消息进行处理的程序的信息。例如CICSIMS、BROKER等。
其默认值为MQAT_NO_CONTEXT通过本字段和下面的PutApplName字段,消息接收程序可以识别某条消息是谁发送过来的,并根据情况进行特殊的处理。
PutApplName:它属于MQMD的origincontext字段,是放入消息的应用程序的名称。其默认值为空。
GroupId:消息组标识,MQforz/OS不支持消息分组。
MsgSeqNumber:组中逻辑消息的顺序号。MQforz/OS不支持消息分组。
Offset:数据的偏移量,MQforz/OS不支持消息分组技术。
MsgFlags:主要是与消息分组相关的一些状态信息。
OriginalLength:分段消息的原始长度。
MQMD的这些字段为我们应用程序的开发提供了很好的设施,例如当应用程序请求方需要一种方法确定哪些返回信息是针对哪条请求时,典型的做法有两种,一种是为每个请求动态创建一个临时队列,把队列名填入ReplyToQ字段,响应程序根据ReplyToQ里的值确定每条消息返回到哪个队列里去;另一种方法是响应方把原始请求的MsgId字段拷贝到它所发回的消息的CorrelId字段里去,发送方用MsgId搜索返回信息。
又如MQ发送消息的消息头里包含了所谓的消息上下文(messagecontext)信息,这些字段描述了消息发送者的一些情况,消息上下文又包括两部分:身份鉴别上下文(Identitycontext)和发送者上下文(Origincontext)。身份鉴别上下文(Identitycontext)描述了消息最初是由谁产生的,包括MQMD的UserIdentifier、AccountingToken和ApplIdentityData字段;发送者上下文(Origincontext)描述了把消息放到队列上的应用程序的情况,包括MQMD的PutApplType,PutApplName,PutDate,PutTime,ApplOriginData字段。当应用程序把一个消息进行转发时,可以选择是重新生成这些上下文还是从原消息里继承上下文。通常的做法是最初的消