Throughput went down when the platform scaled up
The platform had a measured path back toward its throughput target with failover recovery intact, and a load-testing profile it could re-run against future changes.
Overview
A transaction processing platform serving banking clients enabled Kafka and watched throughput drop by roughly a factor of seven. Adding service instances made no difference — performance stayed flat regardless of how many were running, which is the signature of a bottleneck rather than a capacity limit. A validation deadline meant the platform had to demonstrate 80,000 transactions per hour within a week.
Challenge
Flat performance under increasing parallelism pointed at configuration rather than hardware. The deployment ran Kafka 4.0 with KRaft, removing the ZooKeeper dependency but also changing the tuning surface relative to the guidance most teams have absorbed. Failover recovery had to hold through any change, since the workload was financial.
Environment
Kafka 4.0 running in KRaft mode, underpinning a transaction processing platform for banking customers, with JMeter used for load validation.
Approach
Work focused on identifying why added instances produced no gain, then validating each change against a repeatable JMeter load profile so the improvement was measured rather than assumed. Failover behaviour was treated as a constraint on the tuning, not an afterthought.
Solution
- 1Established a repeatable load profile in JMeter so every configuration change could be measured against the same baseline
- 2Investigated why increased service instances produced constant throughput, isolating the serialisation point
- 3Tuned producer and broker configuration for the transaction pattern rather than for general-purpose throughput
- 4Validated failover recovery under load so resilience was not traded away for speed
- 5Reviewed KRaft-specific configuration against guidance written for ZooKeeper-era deployments
Outcome
The platform had a measured path back toward its throughput target with failover recovery intact, and a load-testing profile it could re-run against future changes.
Technologies
Related Use Cases
Producer Timeouts Traced to Controller-Leader Overload
A five-node Kafka cluster serving 60,000 customers was timing out producers under load. The cause was topology, not capacity.
High-Throughput Kafka and RabbitMQ Support for Global Payments
AceMQ provided ongoing support for PagoNXT's high-throughput payments infrastructure running Kafka and RabbitMQ at 2,500 transactions per second, including load testing validation and architecture optimization.
Need Expert Apache Kafka Support?
AceMQ's senior Apache Kafka engineers have handled this exact type of engagement before. Whether you need architectural guidance, hands-on remediation, or an ongoing managed partnership, we're ready to help.