AU2013266979A1 - Transaction processing system and method - Google Patents

Transaction processing system and method Download PDF

Info

Publication number
AU2013266979A1
AU2013266979A1 AU2013266979A AU2013266979A AU2013266979A1 AU 2013266979 A1 AU2013266979 A1 AU 2013266979A1 AU 2013266979 A AU2013266979 A AU 2013266979A AU 2013266979 A AU2013266979 A AU 2013266979A AU 2013266979 A1 AU2013266979 A1 AU 2013266979A1
Authority
AU
Australia
Prior art keywords
database server
client
end database
data
transaction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
AU2013266979A
Inventor
Sven Hakan Andersson
Ulf ÅBRINK
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ACEI AB
Original Assignee
ACEI AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2010202059A external-priority patent/AU2010202059B2/en
Application filed by ACEI AB filed Critical ACEI AB
Priority to AU2013266979A priority Critical patent/AU2013266979A1/en
Publication of AU2013266979A1 publication Critical patent/AU2013266979A1/en
Abandoned legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Abstract A transaction processing system (100) comprising a back 5 end database server (110) storing a client data record of a client; and a front end database server (120) in data communication with the back end database server, the front end database server (120) arranged to retrieve data from the client data record when the client (130) connects to 10 the front end database server (120) and to thereafter process transactions related to the retrieved data, the front end database server (120) further arranged to communicate data to the back end database server (110) to update the client data record based on the processed 15 transactions. 4922199_1 (GHMatters) P71099.AU.3 Lu < ct I--MLU z0

Description

Title TRANSACTION PROCESSING SYSTEM AND METHOD 5 Related Application This application is a divisional application of Australian application no. 2010202059, the disclosure of which is incorporated herein by reference. 10 Field The present invention relates to a transaction processing system and a transaction processing method. 15 Background to the Invention In the gaming industry, there is a move towards server based gaming systems where the majority of the gaming 20 functions are implemented on a server and the gaming machines played by players are clients of the server. For such implementations to be effective, transactions between the gaming machines (also known as gaming 25 terminals) and the server need to be carried out in real time. That is, without any delay that is apparent to the player. Where there are a larger number of gaming machines 30 connecting to a server, the server can be exposed to high loads and hence in a gaming system with a large number of gaming machines, the server may require significant CPU processing power, particularly in light of the fact that the relationship between increased load and CPU power is 35 not linear. This can result in a high investment cost for hardware. 4922199_1 (GHMatters) P71099.AU.3 - 2 Accordingly, there is a need for an architecture suitable for a gaming system that is capable of handling high transaction loads. 5 Summary of the Invention In a first aspect, there is disclosed a transaction processing system comprising: a client arranged to send a connection request 10 including a transaction to be processed; a backend database server maintaining a database, said database storing a client data record of the client; and a front end database server in data communication with the backend database server, the front end database server 15 being arranged to selectively accept or refuse the connection request from the client, wherein upon refusing the connection request, the front end database server provides the client with an identity of another front end database server, and wherein upon accepting the connection 20 request, the front end database server retrieves data from the client data record and thereafter processes the transaction received from the client related to the retrieved data including, 1) updating the retrieved data based on the transaction, 2) storing the updated data in 25 the frontend database server, and 3) communicating the stored updated data to the back end database server; and wherein the back end database server stores the communicated updated data in the client data record in the database. 30 In an embodiment, the back end database server stores client data records for each of a plurality of clients. In an embodiment, the transaction system comprises a 35 plurality of front end database servers, each in data communication with the back end database server, the front end database servers arranged to share connection requests 4922199_1 (GHMatters) P71099.AU.3 - 3 from clients amongst one another. In an embodiment, the transaction system comprises at least one an application server arranged such that each 5 client connects to a front end database server via the application server. In an embodiment, the transaction system comprises a plurality of clients in data communication with the front 10 end database server. In an embodiment, each client is a gaming terminal. In an embodiment, the front end database server processes 15 transactions based on data communicated from the client. In an embodiment, the transaction system is further arranged to transfer responsibility for processing transactions of a client from a failed front end database 20 to another front end database server. In a second aspect there is disclosed a transaction processing method for use with a system having a client, a plurality of frontend database servers, and a backend 25 database server, wherein the backend database server maintains a database, the method comprising: storing a data record for the client in the database; sending from the client a connection request including a transaction to be processed; 30 retrieving data at the frontend database server from the backend database server, selectively accepting or refusing a connection request from the client to one of the frontend database servers, wherein upon refusing the connection request, the one 35 frontend database server providing the client with an identity of another frontend database server, and wherein upon accepting the connection request, the one frontend 4922199_1 (GHMatters) P71099.AU.3 - 4 database server retrieving data from the data record of the client; and when the client connects to the frontend database server: 5 processing the transaction related to the retrieved data at the frontend database server including: 1) updating the retrieved data based on the transaction; 2) storing the updated data in the frontend 10 database server; and 3) communicating the stored updated data from the frontend database server to the backend database server; and storing the communicated updated data in the 15 client data record in the database via the backend database server. In an embodiment, the transaction processing comprises processing transaction related to the retrieved data based 20 on data communicated from the client. Brief Description of the Drawings An embodiment of the invention will now be described in 25 relation to the accompanying drawings in which: Figure 1 is a block diagram of a transaction processing system; and Figure 2 is a flow chart of a transaction processing method. 30 Detailed Description Referring to the drawings there is shown a transaction processing system 100 and method for a database based 35 gaming system that is designed to handle high loads in a real-time environment. 4922199_1 (GHMatters) P71099.AU.3 - 5 The transaction processing system 100 has a back end database server (BEDS) 110 that is the focal point of the system where all data needed by different nodes is shared. The back end database server 110 is also where all client 5 data is stored. The gaming system 100 has a plurality (N) of front end database servers (FEDS) 120A-120E adapted to receive connection requests from a plurality (M) of clients 130A-130G. Clients 130E and 130F are shown as connecting to front end database server 120D via an 10 application server 125 to illustrate that depending on the embodiment, none, some or all of the clients 130A-130G may connect to a front end database server 120 via an application server 125. 15 When a front end database server 120 is started, it connects 210 to the back end database server 110. When a front end database server 120 receives a connection request from a client, it either accepts the request or passes the client the identity of another front end 20 database server 130 if this will achieve load balancing between the plurality of front end database servers 120. Load balancing data is communicated between the front end database servers 120. 25 If the front end database server 120 accepts the request, it requests client data 220 from the back end database server 110. The back end database server 110 retrieves either the entire data record for the client from database 115 or a subset of data that is expected to be accessed 30 frequently. The back end database server 110 then communicates the relevant data to the front end database server 120. Examples of data that may be transferred to the front end database server include status, number of notes, number of coins in the coin acceptor, etc. 35 Once the front end database server 120 accepts the request it will accept transaction requests from the client 130, 4922199_1 (GHMatters) P71099.AU.3 - 6 for example, to update a current record of the credit meter in the database. The front end database server 120 processes the request 230, updates the local version of the client data and waits 240 for further transactions. 5 The front end database server 120 also starts a parallel process 260-275 to update the client data stored in database 115 of back end server database. That is the front end data base server 120 sends update data to the 10 back end database server 110 which updates 265 the database 115. In this manner, the front end database server 120 is able to process the transaction requests in real-time while the 15 back end server 110 is updated in near real-time. When there are no more transactions, the front end database server 120 returns control of the data to the back end database server 120. This process involves 20 determining that all data has been updated 270 so that the database 115 is synchronised to the data that has been updated locally by the front end database server 120. A number of additional features provide additional 25 robustness to the handling of transactions. Specifically, the system is designed such that when application servers 125 are employed, a client can fail over from one application server to another and hence that ownership of a client can be moved from one application server or front 30 end database server 120 to another. If application servers are not employed the system is designed so that a client can fail over from one front end database server 120 to another so that ownership of a client can be moved from one front end database server 120 to another. In addition, 35 an application server can be reconfigured to connect to a different front end database server 120. The system can employ "hot" or "cold" standby servers and the front end 4922199_1 (GHMatters) P71099.AU.3 - 7 database servers 120 can fail over to their standby configuration. The back end database server 110 can also fail over to its standby configuration. 5 Alternatively, or in addition to employing standby services, the system can employ Real Application Clusters which allow multiple instances on different nodes to access a shared database on a cluster system for load balancing. 10 These and other modifications will be apparent to persons skilled in the art and should be considered as falling within the scope of the invention described herein. 15 In the claims which follow and in the preceding description of the invention, except where the context requires otherwise due to express language or necessary implication, the word "comprise" or variations such as "comprises" or "comprising" is used in an inclusive sense, 20 i.e. to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention. It is to be understood that, if any prior art publication 25 is referred to herein, such reference does not constitute an admission that the publication forms a part of the common general knowledge in the art, in Australia or any other country. 4922199_1 (GHMatters) P71099.AU.3

Claims (10)

1. A transaction processing system comprising: a client arranged to send a connection request 5 including a transaction to be processed; a back end database server maintaining a database, said database storing a client data record of the client; and a front end database server in data communication with 10 the back end database server, the front end database server being arranged to selectively accept or refuse the connection request from the client, wherein upon refusing the connection request, the front end database server provides the client with an identity of another front end 15 database server, and wherein upon accepting the connection request, the front end database server retrieves data from the client data record and thereafter processes the transaction received from the client related to the retrieved data including, 1) updating the retrieved data 20 based on the transaction, 2) storing the updated data in the front end database server, and 3) communicating the stored updated data to the back end database server; and wherein the back end database server stores the communicated updated data in the client data record in the 25 database.
2. A transaction system as claimed in claim 1, wherein the back end database server stores client data records for each of a plurality of clients. 30
3. A transaction system as claimed in claim 2, and further comprising a plurality of front end database servers, each in data communication with the back end database server, the front end database servers arranged 35 to share connection requests from clients amongst one another. 4922199_1 (GHMatters) P71099.AU.3 - 9
4. A transaction system as claimed in any one of claims 1 to 3, and further comprising at least one an application server arranged such that each client connects to a front end database server via the application server. 5
5. A transaction system as claimed in any one of claims 1 to 4, and further comprising a plurality of clients in data communication with the front end database server. 10
6. A transaction system as claimed in claim 5, wherein each client is a gaming terminal.
7. A transaction system as claimed in claim 5, wherein the front end database server processes transactions based 15 on data communicated from the client.
8. A transaction system as claimed in claim 3, further arranged to transfer responsibility for processing transactions of a client from a failed front end database 20 server to another front end database server.
9. A transaction processing method for use with a system having a client, a plurality of front end database servers, and a back end database server, wherein the back 25 end database server maintains a database, the method comprising: storing a data record for the client in the database; sending from the client a connection request including a transaction to be processed; 30 retrieving data at the front end database server from the back end database server, selectively accepting or refusing a connection request from the client to one of the front end database servers, wherein upon refusing the connection request, the one 35 front end database server providing the client with an identity of another front end database server, and wherein upon accepting the connection request, the one front end 4922199_1 (GHMatters) P71099.AU.3 - 10 database server retrieving data from the data record of the client; and when the client connects to the front end database server: 5 processing the transaction related to the retrieved data at the front end database server including: 4) updating the retrieved data based on the transaction; 5) storing the updated data in the front end 10 database server; and 6) communicating the stored updated data from the front end database server to the back end database server; and storing the communicated updated data in the 15 client data record in the database via the back end database server.
10. A transaction processing method as claimed in claim 9, and further comprising processing the transaction related 20 to the retrieved data based on data communicated from the client 4922199_1 (GHMatters) P71099.AU.3
AU2013266979A 2007-02-01 2013-12-03 Transaction processing system and method Abandoned AU2013266979A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2013266979A AU2013266979A1 (en) 2007-02-01 2013-12-03 Transaction processing system and method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2007900476 2007-02-01
AU2010202059A AU2010202059B2 (en) 2007-02-01 2010-05-20 Transaction processing system and method
AU2013266979A AU2013266979A1 (en) 2007-02-01 2013-12-03 Transaction processing system and method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
AU2010202059A Division AU2010202059B2 (en) 2007-02-01 2010-05-20 Transaction processing system and method

Publications (1)

Publication Number Publication Date
AU2013266979A1 true AU2013266979A1 (en) 2014-01-09

Family

ID=49883350

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2013266979A Abandoned AU2013266979A1 (en) 2007-02-01 2013-12-03 Transaction processing system and method

Country Status (1)

Country Link
AU (1) AU2013266979A1 (en)

Similar Documents

Publication Publication Date Title
US7930416B2 (en) Load balancing technique implemented in a data network device utilizing a data cache
US6615317B2 (en) Methods and systems for providing a highly scalable synchronous data cache
US7197547B1 (en) Load balancing technique implemented in a data network device utilizing a data cache
KR20200108231A (en) Service process system, service data processing method and device
US20030158951A1 (en) System and method for dynamic content routing
US7734608B2 (en) System, method and computer program product for querying data relationships over a network
US20060155857A1 (en) Deterministic session state management within a global cache array
US7840674B1 (en) Routing messages across a network in a manner that ensures that non-idempotent requests are processed
US20050188055A1 (en) Distributed and dynamic content replication for server cluster acceleration
JPH11502347A (en) Method and apparatus for transaction processing in a distributed database system
ATE366437T1 (en) ELEGANT LOAD BALANCED DISTRIBUTION FOR APPLICATION SERVERS
JP2011516983A5 (en)
US9264519B1 (en) Embedding application services in a distributed datastore
CN102779132A (en) Data updating method, system and database server
CN101404649B (en) Data processing system based on CACHE and its method
EP1953655A2 (en) Transaction processing system and method
US20010027467A1 (en) Massively distributed database system and associated method
US20070083521A1 (en) Routing requests based on synchronization levels
JP2002108817A (en) Method for monitoring availability with shared database
AU2013266979A1 (en) Transaction processing system and method
AU2008200338B2 (en) Transaction processing system and method
CN110019359A (en) A kind of method, apparatus and system for preventing caching from puncturing
KR100683238B1 (en) Method and system for providing on line game
US20120094771A1 (en) gaming management system and gaming management method
US20040230744A1 (en) Cache content protocol for a content data delivery system

Legal Events

Date Code Title Description
MK4 Application lapsed section 142(2)(d) - no continuation fee paid for the application