Storing and resuming application runtime state
US-9600323-B2 · Mar 21, 2017 · US
US9934105B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9934105-B2 |
| Application number | US-201514928876-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 30, 2015 |
| Priority date | Jan 13, 2012 |
| Publication date | Apr 3, 2018 |
| Grant date | Apr 3, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for enabling a distributed computing system to tolerate system faults during the execution of a client process. The method includes instantiating an execution environment relating to the client process; executing instructions within the execution environment, the instructions causing the execution environment to issue further instructions to the distributing computing system, the further instructions relating to actions to be performed with respect to data stored on the distributed computing system. An object interface proxy receives the further instructions and monitors the received to determine if the execution environment is in a desired save-state condition; and, if so, save a current state of the execution environment in a data store.
Opening claim text (preview).
That which is claimed is: 1. A method for enabling fault tolerance in a distributed computing system, the method comprising: instantiating an execution environment relating to a client process executing on a distributed computing platform; executing data manipulation instructions within the execution environment, the data manipulation instructions causing the distributed computing platform to manipulate data stored on the distributed computing platform; and in response to a determination that a save state condition is triggered based upon at least one of a current call of the data manipulation instructions having a particular call type, a call volume of calls of the data manipulation instructions, a call frequency of calls of the data manipulation instructions, a call pattern of calls of the data manipulation instructions, or a call parameter of the current call, saving a current state of the execution environment in a data store by the object interface proxy. 2. The method of claim 1 , wherein the object interface proxy functions as an application programming interface for the distributed computing platform. 3. The method of claim 1 , further comprising determining a fault has occurred with the client process; instantiating a new execution environment relating to the client process; receiving a restore-state instruction by an object interface proxy indicating the client process has experienced the fault; and in response to the restore-state instruction, retrieving the current state from the data store and placing the new execution environment in the current state. 4. The method of claim 3 , wherein any further instructions received subsequent to the save state condition being trigger that are performed by the distributed computing platform prior to determining the fault has occurred are performed again after the new execution environment is placed in the current state. 5. The method of claim 1 , wherein the data manipulation instructions comprises a write data instruction. 6. The method of claim 1 , wherein the data manipulation instructions comprises a plurality of write data instructions. 7. The method of claim 1 , wherein the data manipulation instructions comprises a distributed computing platform function call instruction. 8. A system for enabling a distributed computing system to tolerate system faults, the system comprising: a first execution environment instantiated on a distributed computing platform that is executing at least one client process, the first execution environment executing instructions on at least one software object in accordance with the client process; an object interface proxy running on the distributed computing platform and acting as an interface for routing instructions executed by the client process to the at least one software object and having a fault tolerance module; and a data store for storing data relating to a state of the first execution environment; and wherein the fault tolerance module is configured to save a current state of the first execution environment to the data store in response to a determination that a save state condition is triggered based upon at least one of a current call from the first execution environment having a particular call type, a call volume of calls from the first execution environment, a call frequency of calls from the first execution environment, a call pattern of calls from the first execution environment, or a call parameter of the current call. 9. The system of claim 8 , wherein the object interface proxy functions as an application programming interface for the distributed computing platform. 10. The system of claim 8 , wherein the fault tolerance module is further configured to establish a second execution environment in response to detecting a fault, the second execution environment established with the current state of the first execution environment stored in the data store. 11. The system of claim 8 , wherein the current call comprises a write data instruction. 12. The system of claim 8 , wherein the current call comprises a plurality of write data instructions. 13. The system of claim 8 , wherein the current call comprises a distributed computing platform function call instruction. 14. A computing module, comprising: a processor configured to: execute computer instructions for establishing an execution environment related to a client process that is executing within a distributed computing platform; execute data manipulation instructions within the execution environment, the data manipulation instructions causing the distributed computing platform to manipulate data stored on the distributed computing platform; and in response to a determination that a save state condition is triggered based upon at least one of a current call of the data manipulation instructions having a particular call type, a call volume of calls of the data manipulation instructions, a call frequency of calls of the data manipulation instructions, a call pattern of calls of the data manipulation instructions, or a call parameter of the current call, execute save-state instructions using an object interface proxy which causes the object interface proxy to save a current state of the execution environment in a data store. 15. The computing module of claim 14 , wherein the save state condition is triggered based upon the current call having a data-write operation call type. 16. The computing module of claim 14 , wherein the processor is further configured to determine a call type of the current call. 17. The computing module of claim 14 , wherein the processor is further configured to determine the call frequency of calls having the particular call type. 18. The computing module of claim 14 , wherein the processor is further configured to determine the call parameter of the current call. 19. The computing module of claim 14 , wherein the object interface proxy functions as an application programming interface for the distributed computing platform. 20. The computing module of claim 14 , wherein the fault tolerance module is further configured to establish a second execution environment in response to detecting a fault, the second execution environment established with the current state of the first execution environment stored in the data store.
using middleware or operating system [OS] functionalities · CPC title
for networked environments · CPC title
Restarting or rejuvenating · CPC title
Backup restoration techniques · CPC title
Electricity · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.