METHODS AND DEVICES FOR DETECTING SERVICE FAILURES AND MAINTAINING COMPUTING SERVICES USING A RESILIENT INTELLIGENT CLIENT COMPUTER
First Claim
1. A computer-implemented resilient client failover method to maintain an up-to-date shared application service, the method comprising:
- determining, with an intelligent client computer, a level of data currentness of a primary site;
detecting, with the intelligent client computer, that the primary site is unavailable;
assessing, with the intelligent client computer, a level of data currentness of a secondary site;
determining, with the intelligent client computer, updates made by the intelligent client computer to data that have not been sent to the secondary site based upon the level of data currentness of the secondary site, wherein determining includes;
polling a local transaction log of the intelligent client computer; and
identifying a serialized transaction in the local transaction log that is missing from the secondary site, the serialized transaction including updates made by the intelligent client computer to data for updating the primary site; and
replaying, by the intelligent client computer, the updates to the data made by the intelligent client computer to the secondary site, wherein replaying includes.sending the missing serialized transaction to the secondary site;
updating the secondary site with the missing serialized transaction; and
posting a copy of the serialized transaction to a server side transaction log on the secondary site.
3 Assignments
0 Petitions
Accused Products
Abstract
Intelligent client computing devices track and record the changes they make to data, applications, and services. Systems, devices, and computer readable media for detecting service tier failures and maintaining application services provide a resilient client architecture that allows a client application on an intelligent client to automatically detect the unavailability of server tiers or sites and re-route requests and updates to secondary sites to maintain application services at the client tier in a manner that is transparent to a user. The resilient client architecture understands the level of currentness of secondary sites in order to select the best secondary site and to automatically and transparently bring this secondary site up to date to ensure no data updates are missing from the secondary site.
-
Citations
26 Claims
-
1. A computer-implemented resilient client failover method to maintain an up-to-date shared application service, the method comprising:
-
determining, with an intelligent client computer, a level of data currentness of a primary site; detecting, with the intelligent client computer, that the primary site is unavailable; assessing, with the intelligent client computer, a level of data currentness of a secondary site; determining, with the intelligent client computer, updates made by the intelligent client computer to data that have not been sent to the secondary site based upon the level of data currentness of the secondary site, wherein determining includes; polling a local transaction log of the intelligent client computer; and identifying a serialized transaction in the local transaction log that is missing from the secondary site, the serialized transaction including updates made by the intelligent client computer to data for updating the primary site; and replaying, by the intelligent client computer, the updates to the data made by the intelligent client computer to the secondary site, wherein replaying includes. sending the missing serialized transaction to the secondary site; updating the secondary site with the missing serialized transaction; and posting a copy of the serialized transaction to a server side transaction log on the secondary site. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer readable storage media for maintaining an up-to-date shared application service, the computer readable storage media comprising one or more computer-readable instructions configured to cause one or more computer processors to execute operations comprising:
-
determining, with an intelligent client computer, a level of data currentness of a primary site; detecting, with the intelligent client computer, that the primary site is unavailable; assessing, with the intelligent client computer, a level of data currentness of a secondary site; determining, with the intelligent client computer, updates made by the intelligent client computer to data that have not been sent to the secondary site based upon the level of data currentness of the secondary site, wherein determining includes; polling a local transaction log of the intelligent client computer; and identifying a serialized transaction in the local transaction log that is missing from the secondary site, the serialized transaction including updates made by the intelligent client computer to data for updating the primary site; and replaying, by the intelligent client computer, the updates to the data made by the intelligent client computer to the secondary site, wherein replaying includes. sending the missing serialized transaction to the secondary site; updating the secondary site with the missing serialized transaction; and posting a copy of the serialized transaction to a server side transaction log on the secondary site. - View Dependent Claims (17, 18, 19, 20)
-
-
21. An intelligent client computer device configured to implement a resilient client failover to maintain an up-to-date shared application service, the intelligent client computer device comprising:
-
a client object factory configured to determine a level of data currentness of a primary site; and a link to a control console storing a latest copy of an application services routing table, the intelligent client computer device configured to detect that the primary site is unavailable by accessing the application services routing table; a local transaction log that stores serialized transactions including updates made by the intelligent client computer to data for updating the primary site; wherein the client object factory is further configured to assess a level of data currentness of a secondary site and to determine updates made by the intelligent client computer to data that have not been sent to the secondary site based upon the level of data currentness of the secondary site, wherein determining the updates includes; polling the local transaction log; and identifying a serialized transaction in the local transaction log that is missing from the secondary site; and wherein the client object factory is further configured to replay the updates to the data made by the intelligent client computer to the secondary site wherein replaying the updates includes; sending the missing serialized transaction to the secondary site; updating the secondary site with the missing serialized transaction; and posting a copy of the serialized transaction to a server side transaction log on the secondary site. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A computer-implemented resilient client update method using an active secondary site, the method comprising:
-
determining, with an intelligent client computer, a level of data currentness of a primary site; determining, with the intelligent client computer, updates made by the intelligent client computer to data that have not been sent to the primary site, wherein determining includes; polling a local transaction log of the intelligent client computer; and identifying a serialized transaction in the local transaction log that is missing from the primary site, the serialized transaction including updates made by the intelligent client computer to data for updating the primary site; and synchronously posting, with the intelligent client computer, the updates made by the intelligent client to the primary site; assessing, with the intelligent client computer, a level of data currentness of a secondary site; and asynchronously routing the updates to the data made by the intelligent client computer from the primary site to the secondary site, wherein asynchronously routing includes; the primary site consulting a local copy of an application services routing table; determining a secondary site to which the updates will be sent based upon the application services routing table; sending the updates to the determined secondary.
-
Specification