I've been reading about reliable messaging and have a few questions that I haven't been able to find the answer to:
Why isn't RM enabled by default in wsHttpBinding (and others as well)? In what case would you not want to use reliable messaging? I know in streaming scenarios it doesn't really make sense, but I can't imagine an instance where you would want to send a message/data and not receive it.
Which config file takes precedence if the server's and a client's do not match? I assume if they aren't both <reliableSession enabled="true" />
RM wouldn't be working (would that cause any errors to be thrown?), but what about things like ordered
and inactivityTimeout
?
Unless both server and client have set <reliableSession enabled="true" />
and session is not enabled on the server, it will not use reliable messaging.
I try avoiding reliable messaging because of its overhead. As far as I am concerned, if an operation is TwoWay
, successful reply will guarantee delivery - although not the other way around always true.