Availability Guide for Application Design
Data Protection and Recovery
Availability Guide for Application Design—525637-004
4-22
Transaction Playback
Normal Operation
Normally, the application proceeds as follows:
1. The merchant enters the credit card information at the point-of-sale device.
2. The client process formulates a credit check request from the data entered by the
merchant and sends it to the server.
3. The server checks the card number against the customer data file to ensure that
the card is not reported as lost or stolen, ensures that the appropriate credit is
available, and debits the balance if the credit check is positive.
4. The server process sends the reply indicating a positive or negative response.
Operation if the Server Goes Offline
Now consider what happens if the server becomes unavailable:
1. The merchant enters the credit card information at the point-of-sale device.
2. Code within the requester tries to send the request to the server but receives an
indication that the server is no longer available.
3. The client performs lost and stolen card number checks against a database of lost
and stolen cards maintained locally.
4. With transaction protection, the client enqueues the request to debit the account on
the queue file.
The merchant can now go ahead and make the sale based on the reduced information
available locally. The adjustment of the user’s balance can take place later, when the
server comes back online.
Operation When the Server Is Restored
Once full service is restored, the following happens:
•
Merchants once again get the full service provided by the credit check server and
enter requests that are serviced by the server process.
•
Because the messages are queued, the dequeue process concurrently takes
requests off the queue file and sends them to the server for processing.
It is not a problem that the update of the card holder’s account is delayed. However,
delaying the check on the customer’s credit limit can result in the customer exceeding
that limit. An advisory letter from the credit card company to the card holder is probably
enough to correct the situation. Compared with the loss of trade associated with
locking out thousands of credit card users, the risks associated with a few users
spending beyond their limits are small.