Performance testing, tuning, and scaling guidelines

Before any payment processing solution is deployed to production, it is essential that testing is performed to can ensure that performance requirements have been met. The goal of performance testing is to ensure that the target system can reliably process the loads that are required and to identify the deployment topology and configuration required.

Performance is dependent on infrastructure, environment, process, and the load being presented to the solution. Accordingly, each aspect of the solution needs to be monitored, tuned and configured. To help identify bottlenecks, it is important to monitor each part of the solution and collect suitable metrics. This can be achieved through various tools or through an enterprise observability platform such as Instana.

Performance requirements

A key aspect of performance testing is identifying performance requirements that the solution is required to support. These include:
  • The types of transactions to be processed.
  • The volume of each type of transition.
  • Load profile (how much of each type of load and mix of types).
  • Identifying peak load.
  • Processing latency requirements.

Test loads should reflect the workload that the system is intended to process, both current load and future load.