Patent ID: 8657685

Claim:
An online gaming system, comprising: a communication network; at least two multiple-site geographically dispersed central servers, each of the at least two geographically dispersed central servers being coupled to the communication network; and at least two gaming machines, each of the at least two gaming machines being coupled to the communication network and being configured to carry out a game transaction for each game played, the at least two gaming machines being configured to carry out load balancing when committing the game transactions to the at least two geographically dispersed central servers over the communication network, the load balancing including each gaming machine initially selecting only one of the at least two geographically dispersed central servers to which to commit the game transaction, wherein as between the at least two geographically dispersed central servers and the at least two gaming machines, the at least two gaming machines are each configured to construct a first synchronization log, during recovery from central server or network communication errors occurring during the game transactions, the first synchronization logs of each of the at least two gaming machines includes identifiers of any transactions that were not acknowledged by a non-responding central server to which the game transactions were committed, in response to the selected one of the at least two geographically dispersed central servers being inoperative or unreachable, the at least two gaming machines are further configured to notify a responding central server to build a second synchronization log including transaction data not received by the non-responding central server, when the non-responding central server becomes operational, the responding central server contacts the non-responding central server using a synchronization link and forwards all the transaction data not received by the non-responding central server thereto, and a corresponding one of the at least two gaming machines uses the first synchronization log to re-commit the transactions that were not acknowledged by the non-responding central server.