System and method for reliable message delivery
First Claim
1. An analytic computer system for servicing requests from onsite systems, the analytic computer system being coupled to the onsite systems via a network, comprising:
- a plurality of analytic engines of the analytic computer system for providing computing services to the onsite systems;
a message bus of the analytic computer system having a plurality of queues for holding messages and for facilitating reliable delivery of messages between components of the analytic system;
a database of the analytic computer system that provides message persistence for messages being transmitted to the onsite systems and status information indicating whether the messages have been acknowledged as having been reliably delivered to the onsite systems;
a receive module of the analytic computer system that receives from the onsite systems via the network requests to establish connections with the analytic computer system and receives from the onsite systems via the network messages, persists the received messages in the message bus, and upon successful persistence, transmits an acknowledgement to the onsite systems via the network;
a bus processing module of the analytic computer system that retrieves messages from the message bus, determines whether a retrieved message requires processing by an analytic engine, upon determining that the message requires processing by an analytic engine, persists the message in a queue for the analytic engine, and creates an appropriate reply to the message; and
a transmit module of the analytic computer system that provides connectivity between the analytic computer system and the onsite systems by retrieving messages from the database, establishing a network connection to the onsite systems, transmitting the retrieved messages to the onsite systems via the network, receiving acknowledgements from the onsite systems via the network, and updating in the database the status information of the messages to indicate acknowledgement of successful delivery of the messages.
4 Assignments
0 Petitions
Accused Products
Abstract
A system for reliable message delivery includes a storage unit configured to store a message, and a message stored in the storage unit, wherein the message is persisted in the storage unit. The system also includes a status information associated with the message, the status information capable of indicating a first status. The system further includes a module coupled to the storage unit. The module is operable to execute on a computer and transmit the message to a second computer. The module is also operable to receive an acknowledgement from the second computer, and, in response to receiving the acknowledgement, the module is operable to indicate a second status in the status information. A method for providing reliable message delivery includes providing a storage unit configured to store a message and a message stored in the storage unit, wherein the message is persisted in the storage unit. The method also includes providing a record corresponding to the message, wherein the record is operable to store status information for the message. The method further includes storing a first status in the record, transmitting the message to a destination, and, in response to receiving an acknowledgement from the destination, storing a second status in the record.
-
Citations
15 Claims
-
1. An analytic computer system for servicing requests from onsite systems, the analytic computer system being coupled to the onsite systems via a network, comprising:
-
a plurality of analytic engines of the analytic computer system for providing computing services to the onsite systems; a message bus of the analytic computer system having a plurality of queues for holding messages and for facilitating reliable delivery of messages between components of the analytic system; a database of the analytic computer system that provides message persistence for messages being transmitted to the onsite systems and status information indicating whether the messages have been acknowledged as having been reliably delivered to the onsite systems; a receive module of the analytic computer system that receives from the onsite systems via the network requests to establish connections with the analytic computer system and receives from the onsite systems via the network messages, persists the received messages in the message bus, and upon successful persistence, transmits an acknowledgement to the onsite systems via the network; a bus processing module of the analytic computer system that retrieves messages from the message bus, determines whether a retrieved message requires processing by an analytic engine, upon determining that the message requires processing by an analytic engine, persists the message in a queue for the analytic engine, and creates an appropriate reply to the message; and a transmit module of the analytic computer system that provides connectivity between the analytic computer system and the onsite systems by retrieving messages from the database, establishing a network connection to the onsite systems, transmitting the retrieved messages to the onsite systems via the network, receiving acknowledgements from the onsite systems via the network, and updating in the database the status information of the messages to indicate acknowledgement of successful delivery of the messages. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable storage device that is not a signal containing computer-executable instructions for controlling an analytic computer system to service requests from onsite systems, the analytic computer system being coupled to the onsite systems via a network, by a method comprising:
-
providing access to a plurality of analytic engines of the analytic computer system for providing computing services to the onsite systems; providing access to a message bus of the analytic computer system having a plurality of queues for holding messages and for facilitating reliable delivery of messages between components of the analytic system; providing access to a database of the analytic computer system that provides message persistence for messages being transmitted to the onsite systems and status information indicating whether the messages have been acknowledged as having been received by the onsite systems; under control of a receive module of the analytic computer system, receiving from the onsite systems messages via the network; persisting the received messages in the message bus; and upon successful persistence, transmitting an acknowledgement to the onsite systems via the network; under control of a bus processing module of the analytic computer system, retrieving messages from the message bus; determining whether a retrieved message requires processing by an analytic engine; and upon determining that the message requires processing by an analytic engine, persisting the message in a queue for the analytic engine; and sending an appropriate reply to the message; and under control of a transmit module of the analytic computer system, transmitting the retrieved messages to the onsite systems via the network; receiving acknowledgements from the onsite systems via the network; and updating in the database status information of the messages to indicate acknowledgement of successful delivery of the messages. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method performed by an analytic computer system to service requests from onsite systems, the analytic computer system being coupled to the onsite systems via a network, the method comprising:
-
providing access to a plurality of analytic engines of the analytic computer system for providing computing services to the onsite systems; providing access to a message bus of the analytic computer system having a plurality of queues for holding messages and for facilitating reliable delivery of messages between components of the analytic system; providing access to a database of the analytic computer system that provides message persistence for messages being transmitted to the onsite systems and status information indicating whether the messages have been acknowledged as having been received by the onsite systems; under control of a receive module of the analytic computer system, receiving from the onsite systems messages via the network; persisting the received messages in the message bus; and transmitting an acknowledgement to the onsite systems via the network; under control of a bus processing module of the analytic computer system, retrieving messages from the message bus; and upon determining that the message requires processing by an analytic engine, persisting the message in a queue of the message bus for the analytic engine; and sending an appropriate reply to the message; and under control of a transmit module of the analytic computer system, transmitting the retrieved messages to the onsite systems via the network; receiving acknowledgements from the onsite systems via the network; and updating in the database status information of the messages to indicate acknowledgement of successful delivery of the messages.
-
Specification