MESSAGE QUEUE BEHAVIOR OPTIMIZATIONS
First Claim
1. A method, comprising:
- receiving messages at a message server from a source;
collecting the messages into one or more groups based upon properties associated with the messages; and
sending all of the messages in a selected group to a destination in a single transaction.
2 Assignments
0 Petitions
Accused Products
Abstract
Network and storage calls are reduced by batching messages. Messages are collected from a client and sent to the gateway or backend application in one round trip. Alternatively, the messages are collected for different entities, and the batched messages are durably stored. Related messages, which may have the same sessionID, are grouped into a logical unit or session. This session may be locked to a single message consumer. A session may be associated with an application processing state as an atomic unit of work while other operations are performed on the messages in the session. Acknowledgements are accumulated by a broker on a message server, but the messages are not immediately deleted. Instead, multiple messages in a selected range are periodically truncated from a message store in a single operation. Expired messages for active sessions are proactive cleaned up to prevent sessions from reaching a quota or limit.
-
Citations
19 Claims
-
1. A method, comprising:
-
receiving messages at a message server from a source; collecting the messages into one or more groups based upon properties associated with the messages; and sending all of the messages in a selected group to a destination in a single transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
receiving a plurality of messages at a message server from a source; identifying related messages within the plurality of messages, the related messages having a same session identifier; grouping the related messages; and associating the group of related messages with a destination. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A message server, comprising:
-
one or more processors adapted to process messages received from clients and to send the messages to consumers; a system memory comprising a plurality of queues, each queue used to store groups of related messages; and and a message broker adapted to collect acknowledgements for messages sent to consumers from the message server, the message broker periodically deleting multiple selected messages from the queues in a single operation, the selected messages corresponding to ranges of message acknowledgements received by the message broker. - View Dependent Claims (18, 19)
-
Specification