Subscriber based priority of messages in a publisher-subscriber domain
US-2015120854-A1 · Apr 30, 2015 · US
US9503548B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9503548-B2 |
| Application number | US-201314064390-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 28, 2013 |
| Priority date | Oct 28, 2013 |
| Publication date | Nov 22, 2016 |
| Grant date | Nov 22, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments of the present invention disclose a method, computer program product, and computer system for prioritizing messages based on subscriber preferences. In an embodiment of the invention, an application server computer determines that a subscriber is subscribed to at least one topic space. The application server computer receives one or more topic priority preferences from the subscriber, and a plurality of messages from the at least one topic space. The application server computer prioritizes the plurality of messages based on the received topic priority preference, and sends the prioritized plurality of messages to the subscriber.
Opening claim text (preview).
What is claimed is: 1. A computer program product for prioritizing messages, the computer program product comprising: a non-transitory computer readable storage medium and program instructions stored on the on the non-transitory computer readable storage medium, the program instructions comprising: program instructions to receive, by a message engine, a plurality of messages from a publisher, wherein each message of the plurality of messages correspond to at least one topic space, and comprise a message expiration time and a publisher priority value, and wherein the publisher priority value details an importance level for a corresponding message; responsive to receiving the plurality of messages from the publisher, program instructions to prioritize, by the message engine, the plurality of messages, based on the priority value and the corresponding at least one topic space; program instructions to determine, by the messaging engine, that a subscriber is subscribed to a topic space corresponding to at least one message of the plurality of messages; program instructions to receive, by the messaging engine, one or more topic priority preferences from the subscriber and an expiration threshold priority setting from the subscriber, wherein the one or more topic priority preferences detail a ranking associated with each topic space, and wherein the expiration threshold priority setting, details a threshold amount of time to increase a priority level of a message; responsive to receiving one or more topic priority preferences from the subscriber program instructions to determine, by the message engine, a delivery order of the plurality of messages, wherein the delivery order comprises: program instructions to sort the plurality of messages based on topic space: program instructions to identify at least a first topic space, and a second topic space, wherein the first topic space is a highest ranked topic space and the second topic space is a second highest ranked topic space; program instructions to place a first set of messages that correspond to the first topic space in a first position of a delivery order based on the publisher priority value; and program instructions to place a second set of messages that correspond to the second topic space in a second position of a delivery order based on the publishers priority value; program instructions to send, by the message engine, the plurality of messages to the subscriber based on the determined delivery order; determine, by the messaging engine, whether at least one message, of the plurality of messages, is within the expiration threshold priority setting as set by the subscriber, prior to being delivered to the subscriber; in response to determining that at least one message of the plurality of messages, is within the expiration threshold priority setting, increase the determined priority of the at least one message by, placing an interrupt to an interrupt vector table ensuring, that the at least one message will be delivered prior to the message expiration time; and responsive to increasing the determined priority of the at least one message, reprioritize, by the messaging engine, the plurality of messages. 2. The computer program product of claim 1 , wherein the one or more topic priority preferences are received from a subscriber messaging engine. 3. The computer program product of claim 1 , wherein the plurality of messages is received from at least two distinct topic spaces. 4. The computer program product of claim 1 , wherein the plurality of messages are prioritized in a min-heap data structure. 5. The computer program product of claim 1 , wherein at least one topic space of a set of message topics comprise a main message topic and one or more sub message topics. 6. The computer program product of claim 1 , wherein each message of the plurality of messages, from the publisher, that do not comprise a message expiration time, do not expire. 7. A computer system for prioritizing messages, the computer system comprising: one or more computer processors; one or more non-transitory computer-readable storage media; program instructions stored on the computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising: program instructions to receive, by a message engine, a plurality of messages from a publisher, wherein each message of the plurality of messages correspond to at least one topic space, and comprise a message expiration time and a publisher priority value, and wherein the publisher priority value details an importance level for a corresponding message; responsive to receiving the plurality of messages from the publisher, program instructions to prioritize, by the message engine, the plurality of messages, based on the priority value and the corresponding at least one topic space; program instructions to determine, by the messaging engine, that a subscriber is subscribed to a topic space corresponding to at least one message of the plurality of messages; program instructions to receive, by the messaging engine, one or more topic priority preferences from the subscriber and an expiration threshold priority setting from the subscriber, wherein the one or more topic priority preferences detail a ranking associated with each topic space, and wherein the expiration threshold priority setting, details a threshold amount of time to increase a priority level of a message; responsive to receiving one or more topic priority preferences from the subscriber program instructions to determine, by the message engine, a delivery order of the plurality of messages, wherein the delivery order comprises: program instructions to sort the plurality of messages based on topic space: program instructions to identify at least a first topic space, and a second topic space, wherein the first topic space is a highest ranked topic space and the second topic space is a second highest ranked topic space; program instructions to place a first set of messages that correspond to the first topic space in a first position of a delivery order based on the publisher priority value; and program instructions to place a second set of messages that correspond to the second topic space in a second position of a delivery order based on the publishers priority value; program instructions to send, by the message engine, the plurality of messages to the subscriber based on the determined delivery order; determine, by the messaging engine, whether at least one message, of the plurality of messages, is within the expiration threshold priority setting as set by the subscriber, prior to being delivered to the subscriber; in response to determining that at least one message of the plurality of messages, is within the expiration threshold priority setting, increase the determined priority of the at least one message by, placing an interrupt to an interrupt vector table ensuring, that the at least one message will be delivered prior to the message expiration time; and responsive to increasing the determined priority of the at least one message, reprioritize, by the messaging engine, the plurality of messages. 8. The computer system of claim 7 , wherein the one or more topic priority preferences are received from a subscriber messaging engine. 9. The computer system of claim 7 , wherein the plurality of messages is received from at least two distinct topic spaces. 10. The computer system of claim 7 , wherein at least one topic space of a set of message topics comprise a main message topic and one or more sub message topics. 11. The computer system of claim 7 , wherein each message of the plurality of messages, f
Electricity · mapped topic
Electricity · mapped topic
Delivery according to priorities · CPC title
taking into account QoS or priority requirements · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.