예상대로 MQ 메시지를 보내고 messageID와 correlationID를 반환하고 MQ 서버에서 반환 한 messageID를 사용하여 보내는 특정 메시지의 응답을 캡처 할 수 있습니다.C# IBM MQ 클라이언트가 내 메시지를 보내고 있습니다.
내 응용 프로그램을로드 테스트 도구에 넣었는데 어떤 경우에는 큐 관리자에서 반환 한 messageID가 이전 메시지와 같았고이 경우 응용 프로그램이 다음 메시지를 읽지 못하는 것을 보았습니다 messageID.
저는 큐 관리자의 소유자가 아니며 관리자의 응답이 "사용자 고유의 메시지 ID를 작성했습니다."
그럴 수 있습니까? messageID에 특정 형식이 있어야합니까?
이 내 코드입니다 : 나는 다음과 같은 메시지를 보내기 전에 그래서 난 내 자신의 메시지 ID 값으로의 MessageID 속성을 설정할 수 있습니다
message = strInputMsg;
queueMessage = new MQMessage();
queueMessage.WriteString(message);
queueMessage.Format = MQC.MQFMT_STRING;
queueMessage.Expiry = timeOutExpiry;
queueMessage.ReplyToQueueName = QueueNameExpiry;
queuePutMessageOptions = new MQPutMessageOptions();
queuePutMessageOptions.Options = MQC.MQRO_COPY_MSG_ID_TO_CORREL_ID;
queue.Put(queueMessage, queuePutMessageOptions);
bytReturn = queueMessage.MessageId;
?
queueMessage.MessageId = myOwnMessageId
나 자신의 메시지 ID를 생성하는 것을 권장합니다. 가장 좋은 방법은 요청 메시지 ID를 응답 상관 ID에 복사하는 것입니다. – Stavr00