Page 56 - 130902
P. 56
Educationucucatatioioionn
Ed
Ed
Ed
Evaluating payment gateway per
Evaluating payment gateway performanceformance
B
By Chandan Mukherjeey Chandan Mukherjee
Generall
PayCube Inc.yCube Inc. Generally, the break point for a payment gateway is not y, the break point for a payment gateway is not
Pa
t the moment when the gateway software stops, freezes he moment when the gateway software stops, freezes
or crashes. A well-built gateway is unlikely to reach that hes. A well-built gateway is unlikely to reach that
or cras
F involved with payment gateways expects maxi-nvolved with payment gateways expects maxi- and becomes unacce
stage. The point where gateway performance is too slow he point where gateway performance is too slow
stage. T
r
rom internal stakeholders to clients, everyone om internal stakeholders to clients, everyone
and becomes unacceptable is the break point.ptable is the break point.
i
mum performance, stabilit
mum performance, stability and uptime. But how y and uptime. But how
T
F does one quantify this performance? How do we does one quantify this performance? How do we
l
long to process inside a gateway. Some relevant questions ong to process inside a gateway. Some relevant questions
know if the gateway is indeed performing at the most he gateway is indeed performing at the most The slowdown occurs when transactions are taking too he slowdown occurs when transactions are taking too
know if t
to as
o
optimal level? To provide answers, this article ventures ptimal level? To provide answers, this article ventures to ask during a performance testing exercise are:k during a performance testing exercise are:
i into aspects of payment gateway testing from a perfor-nto aspects of payment gateway testing from a perfor-
•
mance perspective.perspective.
mance • How many concurrent transactions can the gateway How many concurrent transactions can the gateway
handle?andle?
h
• How long does it take to process a message from one How long does it take to process a message from one
•
Testing challengesesting challenges
T e
end to the other?nd to the other?
• How long does it take for a gateway to receive a How long does it take for a gateway to receive a
•
Performance testing for payment gateways has multiple erformance testing for payment gateways has multiple
P request and return its response?
request and return its response?
ob
objectives. The most obvious is to ascertain that the jectives. The most obvious is to ascertain that the • In case of a failure, how many transactions are
• In case of a failure, how many transactions are
gatewa
gateway will perform as expected under certain volumes y will perform as expected under certain volumes dropped or lost? How quickly can the backup
dropped or lost? How quickly can the backup
anticipated. Ot
anticipated. Other objectives to address include:her objectives to address include:
system resume function?
system resume function?
•
• What are the queue sizes, and are they growing?
What are the queue sizes, and are they growing?
Business growth: To manage business growth, usiness growth: To manage business growth,
B • What is the highest transaction volume as a spike
•
What is the highest transaction volume as a spike
payment gateway owners want to know what their ayment gateway owners want to know what their versus the transaction volumes that can be sustained
p
versus the transaction volumes that can be sustained
h for a time, say, for an hour or so?
hardware requirements will be in the near future. ardware requirements will be in the near future.
for a time, say, for an hour or so?
Growth may be organic expansion or a result of owth may be organic expansion or a result of
Gr
mer
mergers and acquisitions. It may also result from gers and acquisitions. It may also result from
T
t the launch of new services and products or similar he launch of new services and products or similar Test-case solutionsest-case solutions
activities.ivities.
act
P
Stability: Performance testing can also help ascertain tability: Performance testing can also help ascertain
S Performance test-case formation is a complex task erformance test-case formation is a complex task
t the stability of the gateway's code base. All gateways he stability of the gateway's code base. All gateways i involving many variables. Here are major points to nvolving many variables. Here are major points to
c
u consider during this process:onsider during this process:
undergo periodic upgrades. Payment gateways are ndergo periodic upgrades. Payment gateways are
24/7 s
24/7 systems and require a high degree of uptime. It ystems and require a high degree of uptime. It
i is difficult to quantify the impact of minor and major s difficult to quantify the impact of minor and major Transaction mixransaction mix
T
ch
changes to the code base from a stability point of view. anges to the code base from a stability point of view.
Performance testing offers a way to do that.erformance testing offers a way to do that. Payment gateways process varied sets of transactions ayment gateways process varied sets of transactions
P
P
and mig
and might handle each differently. To make the ht handle each differently. To make the
Sustainability: Performance testing can validate the performance test reflect the reality of the production erformance test reflect the reality of the production
Sustainability: Performance testing can validate the
p
impact of code changes on the customer experience. mpact of code changes on the customer experience. environment, the test must include a transaction
i
environment, the test must include a transaction
Payment gateway code changes may influence the ayment gateway code changes may influence the
P mix that is similar to the production environment's
mix that is similar to the production environment's
transaction processing flow, look-ups, logs and many
transaction processing flow, look-ups, logs and many mix. This includes testing specifics such as ratios of
mix. This includes testing specifics such as ratios of
ot
other aspects that can slow down the system.her aspects that can slow down the system. transaction types, bank identification number ratios,
transaction types, bank identification number ratios,
routing scenarios, etc.
routing scenarios, etc.
Also, code changes are often done to speed up and
Also, code changes are often done to speed up and
optimize transaction pr
optimize transaction processing. To measure the effect ocessing. To measure the effect
Sin
of suc
of such changes, performance testing is the most h changes, performance testing is the most Single node versus multiple nodesgle node versus multiple nodes
commonly used and reliable tool. Comparing before
commonly used and reliable tool. Comparing before
While designing the test, it is necessary to determine if hile designing the test, it is necessary to determine if
and after results gives a clear view of the impact code esults gives a clear view of the impact code
and after r W
t
ch
changes have on the overall system.anges have on the overall system. the test needs to run from one node or multiple nodes. he test needs to run from one node or multiple nodes.
Both scenarios are important and give performance h scenarios are important and give performance
Bot
data from two different angles. Single node offers
data from two different angles. Single node offers
T
Testing metricsesting metrics understanding of scalability from a single point of
understanding of scalability from a single point of
acquisition; multiple nodes stress the gateway's ability
acquisition; multiple nodes stress the gateway's ability
A
A fundamental question asked is, How many transactions fundamental question asked is, How many transactions to handle many points of acquisition simultaneously.
to handle many points of acquisition simultaneously.
p
per second does the payment gateway handle? This is an er second does the payment gateway handle? This is an An ideal performance test suite will contain test cases
An ideal performance test suite will contain test cases
indication of the number of concurrent transactions the ndication of the number of concurrent transactions the for both single and multiple nodes.
i
for both single and multiple nodes.
gateway can process without reaching a break point. The y can process without reaching a break point. The
gatewa
r real question is, What is the gateway's break point?eal question is, What is the gateway's break point?
56
56