How do you performance-test a high-demand ticket onsale?
Performance-testing a high-demand ticket onsale means rehearsing the full purchase workflow at realistic burst traffic and failure levels, not simply measuring how many homepage requests a website serves. Teams should simulate queue admission, event discovery, live inventory reads, basket reservations, checkout, payments and ticket confirmation while checking that no capacity is oversold.
What should a realistic test cover?
Model the expected arrival curve, including presale-code traffic, announcement peaks, customer refreshes and retries. Represent different customer journeys: browsing without buying, seat selection, multi-ticket baskets and checkout abandonment. Test with appropriate isolated payment environments and synthetic tickets; never run uncontrolled production purchases to reach a target.
Which numbers matter?
Track successful orders per minute, p95/p99 latency, error rates, queue-to-checkout completion, reservation collision rates and the time required for dependent systems to recover. Average response time hides the slowest customers. Test both the target peak and a higher stress level to learn the failure mode.
What should happen when dependencies fail?
Rehearse a payment provider timeout, delayed message delivery, cache failures, scanner sync latency and an operator pausing admission. Retries need idempotency so that a customer clicking “pay” twice does not create duplicate financial transactions or duplicate ticket entitlements. Verify alert thresholds and named incident roles during a tabletop exercise.
Example: If the queue admits 1,000 buyers per minute but checkout can process only 500 successfully, the queue is not protecting the application; it is shifting congestion into basket and payment workflows.
When is a system ready?
Readiness requires passing business invariants (never oversell, never issue a ticket without a valid order), acceptable customer experience and an agreed recovery plan. Document assumptions: forecast demand is not observed demand, and synthetic testing cannot perfectly reproduce customers, payment banks or bot traffic.
