Patent ID: 7716525

Claim:
A method of providing low latency, high throughput assured message delivery in a network using an non-volatile data storage engine, comprising: identifying a set of destinations for a received message; storing the received message in a low-latency protected main data storage engine as a memory entry containing information about each destination and other meta-data associated with the message; attempting to route the message to each identified destination in said set; awaiting an acknowledgement from each identified destination indicating that the message has been successfully received thereby; upon receipt of each acknowledgement, updating the memory entry associated with said received message to indicate that the message has been delivered to the destination returning the acknowledgement; removing the message from said memory when an acknowledgement has been received from each destination in said set, and wherein said data storage engine comprises: a high performance, low latency volatile main memory; a memory controller for continually writing data to and retrieving data from said volatile memory; a power control unit providing a first protected power feed and a second power feed from one or more normal power sources; an independent back-up power supply with a stored energy reserve for use in the event of failure of said one or more normal power sources connected to said power control unit; and a back-up non-volatile memory; and wherein said first power feed supplies said main memory, said backup non-volatile memory, the memory controller, and a backup logic unit, and said second power feed supplies other components in said data storage engine including a system interface and control logic; and wherein said power control unit monitors the supply of power from said one or more normal power sources and upon detection of a failure in all said one or more normal power sources: (i) switches the supply of power to the first power feed from said one or normal power sources to said back-up power supply while allowing said second power feed to power down, and (ii) initiates transfer of current data in said main memory to said non-volatile memory, and wherein said back-up power supply is sized to have a sufficient reserve of stored energy to permit the transfer of the contents of said main memory to said non-volatile memory.