[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Use case for "advertising continuity support"
Some applications are more concerned about missing messages than
others. For those that cannot miss messages, various people are
standardizing reliable messaging protocols. These, however, only
ensure that (barring disaster) every message sent is delivered (or
delivered at most once, etc.). When subscription properties are
modifiable, there is the chance that messages may not be sent at all. For example, if the topic expression for a subscription changes, there may be messages that would be sent under either the old or the new rules. However, a NotificationProducer may choose to implement a subscription property change as a cancellation followed by a new subscription. In this case, messages in the overlap between the old and new topic expressions may be lost. Special care may be needed when the consumer endpoint changes: We would like to know whether there is any guarantee that each message is received exactly once by either the old endpoint or the new (and that all messages before a certain point go to the old and all messages after that point go to the new). In BaseN, we specify that the default guarantee is no guarantee at all, that is, by default there is no difference between changing a subscription property and canceling/resubscribing (except that the SM endpoint remains the same), but we allow for policy utterances to promise more. In some cases it would be feasible to build this sort of reliability on top of the default semantics, provided that the underlying message traffic meets a few relevant criteria, particularly that messages are tagged with a serial number. An NP might be able to advertise that it does not make any guarantees in the face of changing subscription properties, but does provide serial numbers. Back at the subject line, the use cases I see are:
|
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]