×

Gapless delivery and durable subscriptions in a content-based publish/subscribe system

  • US 7,487,246 B2
  • Filed: 06/30/2006
  • Issued: 02/03/2009
  • Est. Priority Date: 06/21/2002
  • Status: Expired due to Fees
First Claim
Patent Images

1. A content-based publish/subscribe system for providing gapless message delivery from a publishing client to a subscribing client, comprising:

  • a plurality of brokers operatively coupled together via a network, each of the brokers including at least one processor and memory coupled to the processor, each of the brokers being operative in at least one of a publisher-hosting broker mode, a subscriber-hosting broker mode and an intermediate broker mode, wherein;

    in the publisher-hosting broker mode, the at least one processor is operative to;

    (i) receive a message from a publishing client coupled to the publish/subscribe system;

    (ii) store the received message and a stream state corresponding thereto; and

    (iii) transmit the message to one or more downstream brokers;

    in the intermediate broker mode, the at least one processor is operative to;

    (i) receive a knowledge message from an upstream broker;

    (ii) accumulate the received knowledge message with an existing information stream;

    (iv) in response to a request for knowledge, transmit at least a portion of the accumulated knowledge messages satisfying at least a portion of the request for knowledge to one or more downstream brokers; and

    (v) transmit curiosity messages corresponding the knowledge messages that cannot be satisfied to one or more upstream brokers;

    in the subscriber-hosting broker mode, the at least one processor is operative to;

    (i) receive a knowledge message from an upstream broker;

    (ii) determine an original maximum time interval in which all messages therein are known;

    (iii) accumulate one or more received knowledge messages in a subend knowledge stream;

    (iv) determine a new maximum time interval in which all messages therein are known based on the accumulated knowledge messages; and

    (v) when the new maximum time interval is greater than the original maximum time interval, transmit all knowledge messages between the new and original maximum time intervals to one or more subscriber clients;

    whereby at least a portion of the plurality of brokers are configured so as to eliminate a need for persistent storage of messages at brokers operating in the intermediate broker mode and to substantially guarantee a gapless delivery of one or more messages transmitted by the publishing client to the subscribing client, even in the presence of a failure in the publish/subscribe system.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×