WCF Reliable Messaging makes web services more reliable. It addresses the following problems:
- A call to a web service does not make because the networks are not perfectly reliable as they suffer congestion and may drop signals.
- OR the service response does not make it back to the client.
If I make multiple calls to the web service and the calls do not reach to the service in the same order that i made them there is a problem.
WCF reliable messaging makes sending messages reliable and ordered over unreliable network.
Demonstration:
Client: Hello Service!
Service: What may I help you!
Client: Message#1
Service: Message#1 received!
Client: Message#2
[No response from Service]
Client: Message#2
Service: Message#2 received!
Client: Good bye!
Service: Bye!
Explanation: The Client did not get a response when it send message#2. The reason may be the service did not get the message#2 or the service got the message but the response did not make it back. Whatever the reason, The client tries again and send the Message#2. if the service received the Message#2 twice it will ignore the second message.