US9270731B2ActiveUtilityA1

Topic-based messaging using consumer address and pool

Assignee: EBAY INCPriority: Apr 15, 2010Filed: Feb 11, 2014Granted: Feb 23, 2016
Est. expiryApr 15, 2030(~3.7 yrs left)· nominal 20-yr term from priority
H04L 65/611H04L 12/1859H04L 67/02H04L 12/58
64
PatentIndex Score
1
Cited by
26
References
18
Claims

Abstract

In a multicast publisher-subscriber environment, a configurator machine manages a consumer pool of multiple receiver machines. The consumer pool is dedicated to a topic. Each receiver machine has a unique consumer address within the consumer pool allocated by the configurator machine. The configurator machine receives registration data from a receiver machine to be added to the consumer pool and provides a consumer address to the receiver machine. The receiver machine transmits a multicast communication to advertise its availability to receive messages on the topic. The multicast communication includes the consumer address. A transmitter machine may publish a message on the topic. The message may be a multicast communication directed to any receiver machine in to the consumer pool, or the message may be a point-to-point communication directed to the receiver machine with the consumer address.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
       1. A method comprising:
 identifying a receiver machine as being available for inclusion in a consumer pool of receiver machines, the receiver machine being configurable to receive messages that correspond to a topic from a transmitter machine among a plurality of transmitter machines; 
 generating a consumer address of the receiver machine with respect to the consumer pool based on a machine identifier received from the receiver machine, the machine identifier including a topic identifier of the topic, the generating being performed by a processor of a machine; and 
 providing the consumer address to the receiver machine, the consumer address being usable by the receiver machine to communicate a message to the transmitter machine among the plurality of transmitter machines based on the consumer address, wherein the communicated message indicates that the receiver machine is available to receive the messages from any transmitter machine among the plurality of transmitter machines. 
 
     
     
       2. The method of  claim 1 , wherein the communicated message indicates that the receiver machine is available to receive the messages from any transmitter machine among the plurality of transmitter machines. 
     
     
       3. The method of  claim 1 , wherein the identifying the receiving machine includes receiving the machine identifier from the receiver machine, the machine identifier including the topic identifier that identifies the topic. 
     
     
       4. The method of  claim 3 , wherein the consumer pool corresponds to the topic identified by the topic identifier; the receiver machine corresponds to a subtopic of the topic; and the messages from the transmitter machine among the plurality of transmitter machines include a first message directed to the consumer pool and a second message directed to the consumer address of the receiver machine that corresponds to the subtopic of the topic. 
     
     
       5. The method of  claim 1 , further comprising:
 receiving an indication that the transmitter machine, in response to the communicated message from the receiver machine, is configured to communicate the messages to the receiver machine, the indication being received from the transmitter machine. 
 
     
     
       6. The method of  claim 1 , further comprising:
 storing the generated consumer address within a database that includes pool data corresponding to the consumer pool, the pool data referencing each of the receiver machines included in the consumer pool. 
 
     
     
       7. The method of  claim 1 , further comprising:
 receiving a request from the receiver machine to use a transport adaptor, the transport adaptor being used to enable communication between the plurality of transmitter machines and the receiver machine; 
 determining that a transport adaptor is available for use by the receiver machine; and 
 providing a transport identifier to the receiver machine, the transport identifier corresponding to the transport adaptor. 
 
     
     
       8. The method of  claim 7 , wherein the messages received from the transmitter machine among the plurality of transmitter machines include the transport identifier that identifies the transport adaptor usable to enable communication between the plurality of transmitter machines and the receiver machine. 
     
     
       9. The method of  claim 8 , wherein the message communicated by the receiver machine includes the transport identifier. 
     
     
       10. A system comprising:
 an identification module configured to identify a receiver machine as being available for inclusion in a consumer pool of receiver machines, the receiver machine being configurable to receive messages that correspond to a topic from a transmitter machine among a plurality of transmitter machines; 
 a processor configured by a generation module to generate a consumer address of the receiver machine with respect to the consumer pool based on a machine identifier received from the receiver machine, the machine identifier including a topic identifier of the topic; and 
 a provision module configured to present the consumer address to the receiver machine, the consumer address being usable by the receiver machine to communicate a message to the transmitter machine among the plurality of transmitter machines based on the consumer address, wherein the communicated message indicates that the receiver machine is available to receive the messages from any transmitter machine among the plurality of transmitter machines. 
 
     
     
       11. The system of  claim 10 , wherein the communicated message indicates that the receiver machine is available to receive the messages from any transmitter machine among the plurality of transmitter machines. 
     
     
       12. The system of  claim 10 , wherein the identification module is further configured to receive the machine identifier from the receiver machine, the machine identifier including the topic identifier that identifies the topic. 
     
     
       13. The system of  claim 12 , wherein the consumer pool corresponds to the topic identified by the topic identifier; the receiver machine corresponds to a subtopic of the topic; and the messages from the transmitter machine among the plurality of transmitter machines include a first message directed to the consumer pool and a second message directed to the consumer address of the receiver machine that corresponds to the subtopic of the topic. 
     
     
       14. The system of  claim 10 , further comprising a reception module configured to receive an indication that the transmitter machine, in response to the communicated message from the receiver machine, is configured to communicate the messages to the receiver machine, the indication being received from the transmitter machine. 
     
     
       15. The system of  claim 10 , further comprising a storage module to store the generated consumer address within a database that includes pool data corresponding to the consumer pool, the pool data referencing each of the receiver machines included in the consumer pool. 
     
     
       16. The system of  claim 10 , wherein the reception module is further configured to receive a request from the receiver machine to use a transport adaptor, the transport adaptor being used to enable communication between the plurality of transmitter machines and the receiver machine, and wherein the provision module is further configured to:
 determine that a transport adaptor is available for use by the receiver machine; and 
 provide a transport identifier to the receiver machine, the transport identifier corresponding to the transport adaptor. 
 
     
     
       17. The system of  claim 16 , wherein the messages received from the transmitter machine among the plurality of transmitter machines include the transport identifier that identifies the transport adaptor usable to enable communication between the plurality of transmitter machines and the receiver machine. 
     
     
       18. A non-transitory machine-readable storage medium storing instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:
 identifying a receiver machine as being available for inclusion in a consumer pool of receiver machines, the receiver machine being configurable to receive messages that correspond to a topic from a transmitter machine among a plurality of transmitter machines; 
 generating a consumer address of the receiver machine with respect to the consumer pool based on a machine identifier received from the receiver machine, the machine identifier including a topic identifier of the topic; and 
 providing the consumer address to the receiver machine, the consumer address being usable by the receiver machine to communicate a message to the transmitter machine among the plurality of transmitter machines based on the consumer address, wherein the communicated message indicates that the receiver machine is available to receive the messages from any transmitter machine among the plurality of transmitter machines.

Join the waitlist — get patent alerts

Track US9270731B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.