Als ich begann, Leistungstests für eine Handelsplattform zu entwickeln, gab es überhaupt keine Auslastungstests. Hier ist, wie ich eine umfassende Testsuite für Auslastungstests aufgebaut habe, die darauf ausgelegt ist, produktionskritische Probleme zu erkennen, bevor sie auftreten.
Der Weckruf
Drei Monate nach dem Produktionsstart stürzte unsere Handelsplattform während der Markteröffnung ab:
- 500+ Benutzer griffen gleichzeitig auf die API zu
- Antwortzeiten: 200ms → 45 Sekunden
- Datenbankverbindungen ausgelastet
- 2 Mio. $ an potenziellen Trades verloren
Wir hatten keine Ahnung, wo unsere Kapazitätsgrenzen lagen. Ich wurde beauftragt, das zu beheben.
Phase 1: Grundlagen schaffen
Bevor man Auslastungstests durchführt, muss man das normale Verhalten kennen:
\
