Highly available transaction failure detection and recovery for electronic commerce transactions
First Claim
1. A method of processing electronic commerce transactions comprising messages exchanged between a client and a server of a computer network, the method comprising:
- establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system;
receiving a request message from the client at the eTA system, the request message relating to an aspect of the electronic commerce transaction;
extracting data from the request message to record a state of the electronic commerce transaction;
detecting that a failure has occurred with respect to the electronic commerce transaction;
determining whether an outcome of the electronic commerce transaction in relation to the request message has failed, and the actual state of the electronic commerce transaction at the failure;
selecting an appropriate recovery action to recover from the failure based upon said actual state;
transmitting a response message to the client in accordance with the recovery action, wherein the response message masks the failure from the client by providing an expected response to the request message from the client.
10 Assignments
0 Petitions
Accused Products
Abstract
Electronic commerce transaction messages are processed over a network between a client and a server in a highly reliable fashion by establishing a secure or un-secure communications connection between the network client and the network server at an electronic transaction assurance (eTA) system, which is located in a communication path between the network client and the network server. The transaction type is identified in the message and the progress of the transaction is tracked using transaction models. Any failure in the back-end server system or in the network connections is detected and the failure is recovered from using an outcome determination technique. The failure of a node within the eTA system is masked from the network client by formulating an appropriate response and sending it back to the client such that the network client and network server that were using the selected node do not see any interruption in their communications.
93 Citations
51 Claims
-
1. A method of processing electronic commerce transactions comprising messages exchanged between a client and a server of a computer network, the method comprising:
-
establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receiving a request message from the client at the eTA system, the request message relating to an aspect of the electronic commerce transaction; extracting data from the request message to record a state of the electronic commerce transaction; detecting that a failure has occurred with respect to the electronic commerce transaction; determining whether an outcome of the electronic commerce transaction in relation to the request message has failed, and the actual state of the electronic commerce transaction at the failure; selecting an appropriate recovery action to recover from the failure based upon said actual state; transmitting a response message to the client in accordance with the recovery action, wherein the response message masks the failure from the client by providing an expected response to the request message from the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of processing electronic commerce transactions comprising messages exchanged between a client and a server of a computer network, the method comprising:
-
establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system and initiating a series of processes at the eTA system, the processes including; a transaction monitoring process wherein the eTA system monitors electronic commerce messages that are exchanged between the client and the server in relation to a transaction; a state capture process wherein the eTA system captures and records information descriptive of one or more states of the transaction; a failure detection process wherein the eTA system determines that a failure has occurred with respect to the transaction and the actual state of the transaction at failure; an outcome determination process wherein the eTA system determines the extent to which the server has processed the transaction; a failure masking process wherein the eTA system masks the occurrence of the failure from the client by sending a response message to the client that is an expected response that the client would have received had the failure not occurred; and a transaction recovery process wherein the eTA system recovers the transaction from the failure based upon said actual state. - View Dependent Claims (15, 16, 17)
-
-
18. A method of processing network messages between a network client and a network server, the method comprising:
-
establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receiving a network message at the eTA system, which is responsible for the communications between the network client and the network server; identifying a transaction type and message parameters included in the received network message, thereby defining an electronic commerce transaction to which the message relates; preserving a state of the electronic commerce transaction and updating the transaction type and message parameters in response to processing of the electronic commerce transaction; indicating a detected failure in a network back-end system or the network communications connection in response to inspection of the content of a received response from back-end system servers or the lack of a received response within a predetermined time period; determining the correct outcome of the electronic commerce transaction as affected by the detected failure and the state of the electronic commerce transaction at the failure, and selecting an appropriate action based upon said state to recover from the detected failure; providing a response message to the network client corresponding to the correct outcome to mask the detected failure; and logging and reporting relevant information about the state and the message parameters of the electronic commerce transaction. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A method for determining the outcome of an electronic commerce transaction initiated by a network message between a network client and a network server, the method comprising:
-
establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receiving a network message related to said electronic commerce transaction at the eTA system, which is responsible for the communications between the network client and the network server; identifying a transaction type and message parameters included in the received network message, thereby defining an electronic commerce transaction to which the message relates; generating a transaction identifier associated with the received message and storing the transaction identifier information with the transaction type and message parameters at a back end database; preserving a state of the electronic commerce transaction and updating the transaction type and message parameters in response to processing of the electronic commerce transaction; resuming the electronic transaction from a failure based upon the preserved state at the failure; and masking the failure by providing an expected response to the received message. - View Dependent Claims (33, 34, 35, 36, 37)
-
-
38. A method for measuring the end-to-end response time of each electronic transaction message sent from a network client side to a network server side of a Web site, the method comprising:
-
establishing a communications connection between the network client and the Web site network server through an electronic transaction assurance system (eTA); receiving a network message from the network client, comprising a request for a Web site page such that the request identifies a transaction type and message parameters, thereby defining an electronic commerce transaction to which the message relates; adding code to the Web page served to the network client that records the time when a request message is sent by the network client, indicating the start of an electronic commerce transaction, and when a response message is received by the network client, indicating the end of said electronic commerce transaction; generating a transaction identifier associated with each electronic commerce transaction request message received from the network client and storing the transaction identifier information with the transaction type and message parameters at a back end database; preserving a state of the electronic transaction and updating the transaction type and message parameters in response to processing of the electronic transaction; resuming the electronic transaction from a failure based upon the preserved state at the failure; and masking the failure by providing an expected response to the request message from the network client. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45)
-
-
46. A program product for use in a processor that executes program steps recorded in a computer-readable media to perform a method of processing network messages between a network client and a network server, the program product comprising:
-
a recordable media; a program of computer-readable instructions executable by the processor to perform operations comprising; establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receiving a network message at the eTA system, which is responsible for the communications between the network client and the network server; identifying a transaction type and message parameters included in the received network message, thereby defining an electronic commerce transaction to which the message relates; preserving a state of the electronic commerce transaction and updating the transaction type and message parameters in response to processing of the electronic commerce transaction; indicating a detected failure in a network back-end system or the network communications connection in response to inspection of the content of a received response from back-end system servers or the lack of a received response within a predetermined time period; determining the correct outcome of the electronic commerce transaction as affected by the detected failure and the state of the electronic commerce transaction at the failure, and selecting an appropriate action based upon said state and selecting an appropriate action to recover from the detected failure; providing an expected response message to the network client to mask the detected failure; logging and reporting relevant information about the state and the message parameters of the electronic commerce transaction.
-
-
47. A system that processes network messages between a network client and a network server, the system comprising one or more processors that execute program instructions and receive a data set, wherein the program instructions are executed to cause the processor to:
-
establish a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receive a network message at the eTA system, which is responsible for the communications between the network client and the network server; identify a transaction type and message parameters included in the received network message, thereby defining an electronic commerce transaction to which the message relates; preserve a state of the electronic commerce transaction and update the transaction type and message parameters in response to processing of the electronic commerce transaction; indicate a detected failure in a network back-end system or the network communications connection in response to inspection of the content of a received response from back-end system servers or the lack of a received response within a predetermined time period; determine the correct outcome of the electronic commerce transaction as affected by the detected failure and the state of the electronic commerce transaction at the failure, and selecting an appropriate action based upon said state and selecting an appropriate action to recover from the detected failure; provide an expected response message to the network client to mask the detected failure; and log and report relevant information about the state and the message parameters of the electronic commerce transaction.
-
-
48. A program product for use in a processor that executes program steps recorded in a computer-readable media to perform a method for determining the outcome of an electronic commerce transaction initiated by a network message between a network client and a network server, the program product comprising:
-
a recordable media; a program of computer-readable instructions executable by the processor to perform operations comprising; establishing a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receiving a message related to an electronic commerce transaction at the eTA system; identifying a transaction type and message parameters included in the received message, thereby defining an electronic commerce transaction to which the message relates; generating a transaction identifier associated with the received message and storing the transaction identifier information with the transaction type and message parameters at a back end database; preserving a state of the electronic commerce transaction and updating the transaction type and message parameters in response to processing of the electronic commerce transaction; and masking a failure of the electronic commerce transaction by providing an expected response message to said received message based upon the preserved state at the failure.
-
-
49. A system that determines the outcome of an electronic commerce transaction initiated by a network message between a network client and a network server, the system comprising one or more processors that execute program instructions and receive a data set, wherein the program instructions are executed to cause the processor to:
-
establish a communications connection between the network client and the network server at an electronic transaction assurance (eTA) system; receive a message related to an electronic commerce transaction at the eTA system; identify a transaction type and message parameters included in the received message, thereby defining an electronic commerce transaction to which the message relates; generate a transaction identifier associated with the received message and storing the transaction identifier information with the transaction type and message parameters at a back end database; preserve a state of the electronic commerce transaction and updating the transaction type and message parameters in response to processing of the electronic commerce transaction; and masking a failure of the electronic commerce transaction by providing an expected response message to said received message based upon the preserved state at the failure.
-
-
50. A program product for use in a processor that executes program steps recorded in a computer-readable media to perform a method for measuring the end-to-end response time of each electronic commerce transaction message sent from a network client side to a network server side of a Web site, the program product comprising:
-
a recordable media; a program of computer-readable instructions executable by the processor to perform operations comprising; establishing a communications connection between the network client and the Web site network server; receiving a network message from the network client, comprising a request for a Web site page such that the request identifies a transaction type and message parameters, thereby defining an electronic commerce transaction to which the message relates; adding code to the Web page served to the network client that records the time when a request message is sent by the network client, indicating the start of an electronic commerce transaction, and when a response message is received by the client, indicating the end of said electronic commerce transaction; generating a transaction identifier associated with each electronic commerce transaction request message received from the client and storing the transaction identifier information with the transaction type and message parameters at a back end database; preserving a state of the electronic transaction and updating the transaction type and message parameters in response to processing of the electronic transaction; resuming the electronic transaction from a failure based upon the preserved state at the failure; and masking the failure by providing an expected response to the request message from the network client.
-
-
51. A system that measures the end-to-end response time of each electronic commerce transaction message sent from a network client side to a network server side of a Web site, the system comprising one or more processors that execute program instructions and receive a data set, wherein the program instructions are executed to cause the processor to:
-
establish a communications connection between the network client and the Web site network server; receive a network message from the network client, comprising a request for a Web site page such that the request identifies a transaction type and message parameters, thereby defining an electronic commerce transaction to which the message relates; add code to the Web page served to the network client that records the time when a request message is sent by the network client, indicating the start of an electronic commerce transaction, and when a response is received by the client, indicating the end of said electronic commerce transaction; generate a transaction identifier associated with each received from the client and store the transaction identifier information with the transaction type and message parameters at a back end database; preserve a state of the electronic transaction and update the transaction type and message parameters in response to processing of the electronic transaction; resume the electronic transaction from a failure based upon the preserved state at the failure; and masking the failure by providing an expected response to the request message from the network client.
-
Specification