What I am curious about is how the service determines that two messages are actually duplicates:
>What attributes of the message are considered?
Is the content of the information considered?
>If I send two messages with the same content but different message attributes, they are considered to be duplicates?
References:
MSDN document: http://msdn.microsoft.com/en-us/library/windowsazure /hh367516.aspx
If the scenario cannot tolerate duplicate processing, then additional
logic is required in the application to detect duplicates which can be
achieved based upon the MessageId property of the message which will
remain constant across delivery attempts. This is known as Exactly
Once processing.
There is also a Brokered on WindowsAzure.com Message Duplication Detection code sample, it should be what you are looking for, as long as you prove it.
I also quickly tested this and sent 5 messages to a queue, where RequiresDuplicateDetection is set to true, all With exactly the same content but different MessageIds. Then I retrieved all five messages. Then I did the opposite, I have matching MessageIds but different payloads, only one message was retrieved.
As far as I know, Azure Service Bus has a duplicate mail detection function, which can delete mails that it thinks are duplicates of other mails. I want to use this function to help prevent certain duplicate transmissions.
p>
What I am curious about is how the service determines that two messages are actually duplicates:
>What attributes of the message are considered?
Is the content of the information considered?
>If I send two messages with the same content but different message attributes, they are considered to be duplicates?
Duplicate detection is viewing the MessageId attribute of the agent message. Therefore, if you set the message ID to be unique, the duplicate detection of each message coming in can be captured It. As far as I know, only the message Id is used for detection. The content of the message is not viewed, so if the message you send has the same actual content but a different message ID, it will not be detected as a duplicate.
References:
MSDN documents: http://msdn.microsoft.com/en-us/library/windowsazure/hh367516.aspx
< /p>
If the scenario cannot tolerate duplicate processing, then additional
logic is required in the application to detect duplicates which can be
achieved based upon the MessageId property of the message which will
remain constant across delivery attempts. This is known as Exactly
Once processing.
There is also a Brokered Message Duplication Detection code sample on WindowsAzure.com, which should be what you are looking for , Just prove it.
I also quickly tested this and sent 5 messages to a queue, where RequiresDuplicateDetection is set to true, all with exactly the same content but different MessageIds. Then I All five messages were retrieved. Then I did the opposite, I had matching MessageIds but different payloads, only one message was retrieved.