System and method for storing large messages
First Claim
1. A system for providing access to a message in a computer environment, comprising:
- a computer, that includesa memory for in-memory storage of message information;
a persistent store for persistent storage of message data; and
an integration component that receives a message from a sending application, and thencreates both an envelope, and a separate payload, for the message, including reading the message in incremental portions smaller than the total message size, and successively writing those portions to the persistent storage as the payload,stores the payload in the persistent store as a plurality of selectively retrievable portions,creates within the envelope a header information, and pointers to different portions of the payload,stores the envelope in the memory, while the separate payload is stored at the persistent store,provides in-memory access to the envelope by one or more receiving applications, andenables the receiving applications to access the envelope in memory, and to use the pointers in the message envelope to select and retrieve selected portions of the message payload from the persistent store for use by those receiving applications.
1 Assignment
0 Petitions
Accused Products
Abstract
A large message can be stored by separating the message into an envelope portion containing information such as headers, protocols, and addresses, and a payload portion containing items such as file attachments. The envelope portion can be stored in local storage, while the payload can be stored to a persistent store. The message can be processed incrementally, such that the entire message is never in system memory. Once the envelope portion is processed, the payload portion can be read in increments without being processed, and those increments written directly to the persistent store. Alternatively, the payload can be streamed to the persistent store. A pointer in the envelope can then be used to locate and retrieve attachments from persistent storage.
This description is not intended to be a complete description of, or limit the scope of, the invention. Other features, aspects, and objects of the invention can be obtained from a review of the specification, the figures, and the claims.
182 Citations
18 Claims
-
1. A system for providing access to a message in a computer environment, comprising:
-
a computer, that includes a memory for in-memory storage of message information; a persistent store for persistent storage of message data; and an integration component that receives a message from a sending application, and then creates both an envelope, and a separate payload, for the message, including reading the message in incremental portions smaller than the total message size, and successively writing those portions to the persistent storage as the payload, stores the payload in the persistent store as a plurality of selectively retrievable portions, creates within the envelope a header information, and pointers to different portions of the payload, stores the envelope in the memory, while the separate payload is stored at the persistent store, provides in-memory access to the envelope by one or more receiving applications, and enables the receiving applications to access the envelope in memory, and to use the pointers in the message envelope to select and retrieve selected portions of the message payload from the persistent store for use by those receiving applications. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for providing access to a message in a computer environment, comprising the steps of:
-
providing a computer that includes a memory for in-memory storage of message information, a persistent store for persistent storage of message data, and an integration component; receiving a message from a sending application, at the integration component at the computer; creating both an envelope, and a separate payload, for the message, including reading the message in incremental portions smaller than the total message size, and successively writing those portions to the persistent storage as the payload; storing the payload in the persistent store as a plurality of selectively retrievable portions; creating within the envelope a header information, and pointers to different portions of the payload; storing the envelope in the computer'"'"'s memory, while the separate payload is stored at the persistent store; and providing in-memory access to the envelope by one or more receiving applications to access the envelope in memory, and to use the pointers in the message envelope to select and retrieve selected portions of the message payload, from the persistent store, for use by those receiving applications. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer readable medium including instructions stored thereon which when executed cause the computer to perform the steps of:
-
receiving at a computer, including a memory for in-memory storage of message information, and a persistent store for persistent storage of message data, a message, from a sending application, at an integration component at the computer; creating both an envelope and a separate payload for the message, including reading the message in incremental portions smaller than the total message size, and successively writing those portions to the persistent storage as the payload; storing the payload in the persistent store as a plurality of selectively retrievable portions; creating within the envelope a header information, and pointers to different portions of the payload; storing the envelope in the computer'"'"'s memory, while the separate Payload is stored at the persistent store; and providing in-memory access to the envelope, by one or more receiving applications to access the envelope in memory, and to use the pointers in the message envelope to selectively retrieve selected portions of the message payload from the persistent store, for use by those receiving applications. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification