Publisher-based message data caching in a publish-subscription environment
First Claim
1. A computer-implemented method for caching potentially repetitive message data in a publish-subscription (pub/sub) messaging environment, comprising:
- determining that a first type of message has a publication rate higher than other types of messages;
identifying a set of data in a first message received on a broker system from a publisher system, the set of data having a potential to appear in at least one future message based on the publication rate, wherein the first message is of the first type;
sending a unique identifier corresponding to the set of data from the broker system to the publisher system, the unique identifier identifying the set of data as cacheable;
receiving a second message on the broker system from the publisher system, the second message having the unique identifier;
retrieving the set of data from a cache;
replacing the unique identifier in the second message with the set of data to yield a completed message;
sending the completed message to a subscriber system;
determining that a second type of message has a higher publication rate than other types of messages, the higher publication rate surpassing the publication rate of the first type of message; and
invalidating the set of data from the cache in response to the determination that the second type of message has the higher publication rate than other types of messages.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention provide an approach for a broker-assisted, publisher side cache that can be utilized to reduce a volume of data (e.g., network traffic) delivered between a publisher and broker in a publication/subscription (pub/sub) environment. Specifically, in a typical embodiment, when a message is received on a broker system from a publisher system, the broker system analyzes the message for potentially repetitive data. Such data can be determined from historical messages (e.g., determining that a certain set of data appeared in multiple messages and is thus flagged in a database or the like), a set of rules (e.g., if data set “Y” appears, flag it as potentially repetitive), etc. Regardless, once such a set of data has been identified, a unique identifier/key corresponding thereto will be sent back to the publisher system and the set of data will be stored in a (data) cache. Upon receipt, the publisher system will cache/store the unique identifier in a (key) cache. Then, when the publisher system generates a future message that would contain the same set of data, the publisher system will substitute the unique identifier (as retrieved from the key cache) for the set of data to yield an abbreviated/truncated message. The abbreviated message would be sent to the broker system, which would: analyze the message; locate the unique identifier; retrieve the corresponding set of data from the (data) cache; replace the unique identifier with the set of data to yield a completed message; and then send the completed message to relevant subscriber system(s).
-
Citations
20 Claims
-
1. A computer-implemented method for caching potentially repetitive message data in a publish-subscription (pub/sub) messaging environment, comprising:
-
determining that a first type of message has a publication rate higher than other types of messages; identifying a set of data in a first message received on a broker system from a publisher system, the set of data having a potential to appear in at least one future message based on the publication rate, wherein the first message is of the first type; sending a unique identifier corresponding to the set of data from the broker system to the publisher system, the unique identifier identifying the set of data as cacheable; receiving a second message on the broker system from the publisher system, the second message having the unique identifier; retrieving the set of data from a cache; replacing the unique identifier in the second message with the set of data to yield a completed message; sending the completed message to a subscriber system; determining that a second type of message has a higher publication rate than other types of messages, the higher publication rate surpassing the publication rate of the first type of message; and invalidating the set of data from the cache in response to the determination that the second type of message has the higher publication rate than other types of messages. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for caching potentially repetitive message data in a publish-subscription (pub/sub) messaging environment, comprising:
-
a first bus; a first processor coupled to the first bus; and a first memory medium coupled to the first bus, the first memory medium comprising instructions to; determine that a first type of message has a publication rate higher than other types of messages; identify a set of data in a first message received on a broker system from a publisher system, the set of data having a potential to appear in at least one future message based on the publication rate, wherein the first message is of the first type; send a unique identifier corresponding to the set of data from the broker system to the publisher system, the unique identifier identifying the set of data as cacheable; receive a second message on the broker system from the publisher system, the second message having the unique identifier; retrieve the set of data from a cache; replace the unique identifier in the second message with the set of data to yield a completed message; send the completed message to a subscriber system; determine that a second type of message has a higher publication rate than other types of messages, the higher publication rate surpassing the publication rate of the first type of message; and invalidate the set of data from the cache in response to the determination that the second type of message has the higher publication rate than other types of messages. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. At least one computer program product for caching potentially repetitive message data in a publish-subscription (pub/sub) messaging environment, the at least one computer program product comprising at least one computer readable storage media, and program instructions stored on the at least one computer readable storage media, to:
-
determine that a first type of message has a publication rate higher than other types of messages; identify a set of data in a first message received on a broker system from a publisher system, the set of data having a potential to appear in at least one future message based on the publication rate, wherein the first message is of the first type; send a unique identifier corresponding to the set of data from the broker system to the publisher system, the unique identifier identifying the set of data as cacheable; receive a second message on the broker system from the publisher system, the second message having the unique identifier; retrieve the set of data from a cache; replace the unique identifier in the second message with the set of data to yield a completed message; send the completed message to a subscriber system; determine that a second type of message has a higher publication rate than other types of messages, the higher publication rate surpassing the publication rate of the first type of message; and invalidate the set of data from the cache in response to the determination that the second type of message has the higher publication rate than other types of messages. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification