Shared Durable

This example illustrates the operation of a persistence store with a shared durable. (In contrast, the preceding examples illustrated stores with standard durables.)

Shared Durable Distributes Messages to Subscribers

Notice these features of the example in the preceding diagram:

  • Pub10 publishes messages through its endpoint. Notice that subscribers Sub11 through Sub20 do not receive those messages along a direct path. (Contrast the preceding examples of standard durables, which took advantage of a direct path.)
  • Store3 collects the message stream from Pub10, which represents potentially many program processes.
  • Sub11 through Sub20 are all instances of the same program. They all subscribe to one shared durable within Store3. (Contrast the preceding examples, in which each program subscribed to a separate standard durable.)
  • The shared durable distributes the message stream to Sub11 through Sub20.
  • The subscribers receive their portion of the message stream, process the messages, and acknowledge completion back to the shared durable.
  • An individual message is processed by exactly one of the subscribers. Together, the subscribers process every message in the stream.