Legal claims defining the scope of protection, as filed with the USPTO.
1. A system comprising: a memory interface to store messages; a pointer to identify a message stored in the memory interface and targeted for delivery to a plurality of consumers; and a message parser configured to receive data from the pointer and the memory interface, the message parser to obtain priority information from the message about the plurality of consumers at which the message is targeted, wherein the priority information comprises an order in which the plurality of consumers are permitted to consume the message, wherein each of the plurality of consumers comprise processing units to consume the message, and wherein the message parser is configured to delete the message in the memory interface upon the earlier of i) the message having been consumed by each of the plurality of consumers according to the priority information obtained from the message and ii) a confirmation to discard the message having been received from a consumer that has consumed the message according to the priority information obtained from the message, thereby making the message unavailable for each of the plurality of consumers that is lower in priority than the consumer from which the confirmation was received.
2. The system of claim 1 , wherein the information comprises the number of consumers.
3. The system of claim 1 , wherein the information comprises identities of the consumers to which the message is targeted.
4. The system of claim 2 , wherein the message parser comprises a counter to count how many consumers have consumed the message.
5. The system of claim 4 , wherein the counter increments each time a consumer consumes the message.
6. The system of claim 4 , wherein the counter decrements each time a consumer consumes the message.
7. The system of claim 4 , wherein the counter comprises a plurality of registers.
8. The system of claim 1 , wherein the message is in a queue, and the consumers read the message from the queue.
9. The system of claim 1 , wherein the pointer is a register.
10. A method of message multicasting, the method comprising: obtaining, from a persistent header in a message to be multicast, priority information assigned to at least a first consumer and a second consumer at which the message is targeted, the priority information comprising an order in which the first consumer and the second consumer are permitted to consume the message; using the priority information to determine the order in which the first consumer and the second consumer are to consume the message; wherein the first consumer and the second consumer comprise processing units to consume the messages; and deleting the message in the memory interface upon the earlier of i) the message having been consumed by each of the first consumer and the second consumer according to the priority information obtained from the message and ii) a confirmation to discard the message having been received from either the first consumer or the second consumer that has consumed the message according to the priority information obtained from the message, thereby making the message unavailable for the other of the first consumer or the second consumer that is lower in priority than the consumer from which the confirmation was received.
11. The method of claim 10 , further comprising: obtaining a number of consumers from the persistent header.
12. The method of claim 10 , further comprising: obtaining identities of the first and second consumers from the persistent header.
13. The method of claim 11 , further comprising: receiving a confirmation from the first consumer or the second consumer indicating that the message has been read successfully.
14. The method of claim 13 , further comprising: incrementing a counter value by one after receiving the confirmation.
15. The method of claim 14 , further comprising: updating the pointer to a next message when the counter value equals a number of consumers.
16. The method of claim 13 , further comprising: setting a counter value to a number of consumers.
17. The method of claim 16 , further comprising: decrementing the counter value by one after receiving the confirmation.
18. The method of claim 17 , further comprising: updating the pointer to a next message when the counter value is 0.
19. The method of claim 10 , wherein the persistent header is added to the message by a producer.
20. The method of claim 10 , wherein the message is in a queue, and the first consumer and the second consumers read the message from the queue.
21. The system of claim 1 , wherein the message parser retains the message in the memory interface until the first consumer confirms consumption of the message, after which the message is available for consumption by a second consumer, where the first consumer has a higher priority than the second consumer.
22. The method of claim 10 , wherein the first consumer has a higher priority than the second consumer, the method further comprising: delivering the message to the first consumer; retaining the message in the memory interface until the first consumer confirms consumption of the message; and in response to confirmation from the first consumer, delivering the message to the second consumer.
Unknown
December 3, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.