Zum Inhalt springen

Suchen...

Die drei Hauptgrundursachen für die meisten Fehlerwirkungen

Langsame Systeme kosten echtes Geld, noch bevor sie überhaupt abstürzen. Ein Schwellenwert von 70 % CPU-Auslastung löst automatische Warnmeldungen aus, isoliert die Grundursache und sorgt dafür, dass Nutzer nie eine 404-Fehlermeldung zu sehen bekommen.

11 Min. Lesezeit
Cover zum Expertengespräch über 'Die drei Hauptgrundursachen für die meisten Fehlerwirkungen' mit Rao Dhaligadoo und Richard Seidl.

Eine langsame Systemleistung ist ein messbares Geschäftsrisiko: Nutzer brechen Anwendungen ab, deren Ladezeit mehr als fünf Sekunden beträgt, und Ausfälle, die sich eher in Verlangsamungen als in vollständigen Ausfallzeiten äußern, können Kosten in Höhe von mehreren zehn Millionen Dollar verursachen. Ein proaktiver Ansatz legt einen Schwellenwert von 70 % der CPU-Auslastung fest, löst automatische Überwachungswarnungen aus, sammelt Daten zu betroffenen Datenbankabfragen und API-Endpunkten und leitet die Befunde in ein Ticket weiter, bevor Nutzer eine Verschlechterung bemerken.

Das Wichtigste in Kürze

  • Eine Schwelle von 70 % der CPU-Auslastung oder der Ressourcenauslastung löst automatische Warnmeldungen aus, bevor es zu Fehlerwirkungen kommt, sodass Endnutzer von Verzögerungen und 404-Fehlhandlungen komplett verschont bleiben.
  • Langsame Systeme kosten echtes Geld, auch ohne vollständige Ausfälle: Ein gemeinsamer Vorfall mit Verzögerungen bei YouTube und Azure kostete mehr als 70 Millionen US-Dollar.
  • KI-gestützte Testmonitore wie „Bits AI“ von Datadog lokalisieren genau die Datenbankabfrage oder den API-Endpunkt, der ein Leistungsproblem verursacht, und verkürzen so die Analysezeit von Stunden auf Minuten.
  • Die Optimierung von Datenbankabfragen und die Konfiguration von Load Balancern bei hohem Datenverkehr sind laut Rao Dhaligadoos Praxiserfahrung die häufigsten Grundursachen für Leistungsprobleme in der Produktion.
  • Reaktive Incident-Reaktion ohne proaktive Überwachung zwingt Teams in „War-Room“-Situationen – in einem konkreten Fall dauerte es 45 Stunden, bis der Betrieb wiederhergestellt war.

Langsame Systeme kosten Geld, noch bevor sie überhaupt abstürzen

Ein System, das langsam läuft, verliert Kunden und Umsatz, obwohl es technisch gesehen noch läuft. Rao Dhaligadoo bringt es auf den Punkt, ohne um den heißen Brei herumzureden: Nutzer geben eine App auf, bei der das Einloggen länger als fünf Sekunden dauert, und in einem Markt voller Alternativen wechseln sie einfach zur nächsten.

Die Fehlerwirkung, auf die die meisten Teams achten, ist die totale Fehlerwirkung. Der 404-Fehler, der Ladesymbol, der nie verschwindet, das System, das schwarz wird. Diese Ereignisse erregen Aufmerksamkeit, weil man sie unmöglich ignorieren kann. Langsamkeit bleibt im blinden Fleck, denn das System reagiert zwar noch, aber gerade so schlecht, dass es die Leute vertreibt.

Rao nennt einen kombinierten Ausfall, der vor etwa zwei Jahren YouTube und Azure betraf und mehr als 70 Millionen US-Dollar kostete. Die Systeme waren nicht ausgefallen. Sie waren langsam. Allein diese Zahl rückt die Leistung aus dem Bereich einer technischen Feinheit in den Bereich eines geschäftlichen Problems.

Warum Nutzer nach fünf Sekunden abspringen

Die Leute vergleichen jede Anwendung mit der schnellsten, die sie nutzen. Mobile Apps setzen den Maßstab. Du tippst drauf, und das Ergebnis erscheint. Wenn eine Website oder ein Geschäftssystem hinter dieser Erwartung zurückbleibt, wirkt es kaputt – selbst wenn es funktioniert.

Deshalb ist Langsamkeit ein schwierigeres Problem als ein klarer Absturz. Ein Absturz zwingt zu einer Entscheidung: Jemand schlägt Alarm und das Team reagiert. Langsamkeit untergräbt das System still und leise. Kunden wandern nach und nach ab, und der Umsatzverlust zeigt sich erst lange nach der Ursache.

Richte die Warnmeldung bei 70 Prozent ein, nicht erst bei einer Fehlerwirkung

Der Kerngedanke, den Rao beschreibt, ist ein Schwellenwert von 70 Prozent. Wenn die CPU-Auslastung oder das Überwachungssystem 70 Prozent überschreitet, wird automatisch eine Warnmeldung ausgelöst. Es geht darum, zu handeln, bevor das System von einer Fehlerwirkung betroffen ist – nicht erst danach.

Systeme, die über 70 Prozent liegen, neigen dazu, schnell an Leistung zu verlieren. Sie werden langsamer und stürzen dann ab. Wenn man den Trend bei 70 Prozent erkennt, gewinnt das Team Zeit für die Diagnose und Behebung, während die Nutzer weiterhin bedient werden.

Raos Team nutzt Datadog als Testmonitor. Wenn der Schwellenwert überschritten wird, sammelt das Tool selbstständig die relevanten Daten: betroffene Datenbanken, Abfragen, API-Endpunkte, die Netzwerkschicht. Anschließend erstellt es ein Ticket in Jira oder JSM, dem diese Informationen bereits beigefügt sind.

Die Automatisierung sammelt die Daten. Ein Mensch entscheidet, was sie bedeuten. Diese Aufteilung ist wichtig, denn der Testmonitor kann nicht wissen, ob ein Spitzenwert ein echtes Problem war oder eine einmalige Abweichung, die durch eine bewusste Maßnahme des Teams in der Produktion an diesem Tag verursacht wurde.

Wie die Behebung vom Alarm bis zur Veröffentlichung verläuft

Sobald das Ticket erstellt ist, erfolgt die Validierung, bevor mit der Arbeit begonnen wird. Ist die Warnung echt oder handelte es sich um eine einmalige Anomalie? Diese Überprüfung schont die Zeit des Teams, denn eine Fehlerbehebung zieht Entwickler, Tester und Infrastrukturmitarbeiter mit ein.

Von da an folgt der Prozess der üblichen Testpraxis für die Performance:

SchrittWas passiert
ValidierungEin Mitarbeiter bestätigt, dass das Ticket ein echtes Problem widerspiegelt
ReproduzierenDas Team reproduziert das Leistungsproblem aus der Produktion in einer Testumgebung
BehebenEntwickler beheben die genau identifizierte Ursache anhand der Daten und vorgeschlagenen Lösungen im Ticket
Erneut testenTester bestätigen, dass das Problem behoben ist
RegressionDie Tester prüfen, ob andere Funktionen weiterhin funktionieren
FreigabeDie Korrektur wird in die Produktion übernommen

Das Reproduzieren eines Fehlers in einer Testumgebung ist gängige Praxis bei Testern. Auf die Performance angewendet bedeutet das, die gleiche Verlangsamung nachzustellen, bevor jemand versucht, sie zu beheben. Sobald sie reproduziert ist, wissen die Entwickler genau, wo sie ansetzen müssen.

So replizierst du eine Verlangsamung aus der Produktion in einer kleineren Umgebung

Passe deine Testumgebung so genau wie möglich an die Produktion an, soweit es die Ressourcen zulassen, und skaliere dann proportional, wenn eine exakte Anpassung nicht möglich ist. Wenn du dir nur die Hälfte der Ressourcen leisten kannst, führe die Hälfte der Last aus. Dieses Verhältnis sorgt dafür, dass der Test aussagekräftig bleibt.

Der Grund, warum ein skalierter Test trotzdem funktioniert, liegt in der Präzision. Ein generischer Lasttest versucht, das Problem mit Brute-Force-Methoden auszulösen. Ein gezielter Test weiß, welche Datenbankabfrage oder welcher API-Endpunkt schuld ist, und lenkt die Last direkt dorthin.

Diese Präzision ist der Grund, warum Raos Team zusätzlich zu der Testüberwachung, die Cloud-Plattformen bereits bieten, Datadog einsetzt. Die zusätzliche Detailtiefe zeigt dir genau, welche Abfrage und welcher Endpunkt die Verlangsamung verursachen, sodass du die konkrete Fehlerwirkung reproduzieren kannst, anstatt zu raten.

Der wahre Befund in Gigabyte an Logs finden

Das Schwierige an einem Performance-Problem ist nicht die Datenmenge, sondern die Isolierung der wenigen Elemente darin, die die Fehlerwirkung tatsächlich verursachen. Die Logs umfassen Gigabytes, und Dutzende von Prozessen laufen gleichzeitig. Die wahre Ursache herauszufinden, ist die eigentliche Arbeit.

Rao nennt KI als das Werkzeug, das diesen Prozess verkürzt. Datadogs „Bits AI“ wertet die Überwachungsdetails aus – wie oft jeder Endpunkt aufgerufen wurde, welche Operationen ausgeführt wurden – und deckt auf, wo das Problem liegt. Die manuelle Analyse derselben Daten kann Stunden dauern.

Die KI erstellt außerdem Beispielabfragen und Vorschläge zur Behebung des Problems im Code, die direkt ins Ticket übernommen werden. Entwickler können dann eine fundierte Entscheidung treffen, anstatt bei Null anzufangen.

Das menschliche Urteilsvermögen bleibt aus einem Grund im Spiel, den die KI nicht abdecken kann: den Kontext. Das Tool weiß nicht, ob der heutige Spitzenwert eine Anomalie war oder das Ergebnis einer Änderung, die das Team in der Produktionsumgebung vorgenommen hat. Das muss ein Mensch liefern.

Die drei häufigsten Ursachen

In allen Systemen, an denen Rao gearbeitet hat, sind drei Ursachen für die meisten Leistungsprobleme verantwortlich.

  • Datenbankabfragen. Das Datenvolumen, das Anwendungen verarbeiten, wächst ständig, und bei Big Data müssen die Abfragen optimiert werden. Nicht optimierte Abfragen sind seiner Erfahrung nach der häufigste Übeltäter.
  • Skalierung und Infrastruktur. Wie das System aufgebaut und vernetzt ist, bestimmt, wie es unter Last standhält.
  • Lastenausgleich. Wenn die Auslastung steigt, stellt sich die Frage, ob der Lastverteiler sie noch korrekt verteilt.

Proaktive Überwachung verwandelt Monate in einen Sprint

Der Wechsel von reaktivem „Feuerlöschen“ zu proaktiven Warnmeldungen verkürzt die Reaktionszeit drastisch. Rao schätzt, dass Arbeit, die früher einen Monat oder zwei Wochen dauerte, nun in etwa einen Sprint passt.

Der alte Weg war in jedem Schritt langsam. Kunden riefen an, um zu melden, dass das System ausgefallen war. Wenn ein Team versuchte, proaktiv zu handeln, musste jemand den Bereitschaftstechniker ausfindig machen, der zehn oder fünfzehn Minuten brauchte, um anzukommen, dann eine halbe Stunde bis eine Stunde, um die Daten zu analysieren, und anschließend noch mehr Zeit, um alles in ein Ticket oder eine E-Mail zu schreiben. Dabei schlichen sich immer wieder Fehlhandlungen ein.

Dann kam der Widerstand. Entwickler gingen in die Defensive und beharrten darauf, dass sich das Problem von selbst lösen würde oder dass es auf ihrem Rechner funktionierte. Jede Übergabe verursachte zusätzliche Verzögerungen.

Die automatisierte Erfassung von Beweismaterial beseitigt den Großteil dieser Reibungsverluste. KI hilft auch bei der Erstellung der Performance-Skripte, der JMeter-Skripte, was den Zyklus weiter verkürzt. Die manuelle Überprüfung bleibt bestehen, da das Team den Daten ohne Überprüfung nicht vollständig vertrauen kann.

Der menschliche Preis der reaktiven Herangehensweise

Nicht proaktiv zu sein, hat einen Preis, der in keinem Ausfallbericht auftaucht: die Menschen, die das Problem beheben. Rao beschreibt einen Ausfall bei einer Bank, bei dem das Team 45 Stunden am Stück im Büro blieb. Er hatte für dieses Wochenende eigentlich Urlaub geplant.

Der Stress in diesem Krisenstab war Epic. Der CIO kam gegen 13 Uhr in seinem Anzug herein, er wirkte entspannter, aber alle anderen waren … Und dann herrschte totale Stille. Und er meinte so: „Wir können es uns nicht leisten, dass das System noch länger ausfällt.“ — Rao Dhaligadoo

Selbst nach diesem Moment dauerte es noch weitere zehn bis fünfzehn Stunden, bis der Betrieb wieder lief. Verpasste Zeit mit der Familie, verpasste Schulaufführung eines Kindes, ein abgesagter Urlaub. Das ist es, was reaktive Arbeit einem Team abverlangt.

Proaktive Überwachung zielt ebenso darauf ab, diesen Stress zu beseitigen, wie den Umsatz zu sichern. Im Idealfall sieht der Endnutzer nie den Ladekreis oder die 404-Fehlermeldung, und das Team sitzt nie in einem Krisenstab, um das sicherzustellen.

Häufig gestellte Fragen

Warum bekommen langsame Systeme weniger Aufmerksamkeit als komplette Ausfälle?

Weil das System immer noch reagiert. Ein 404-Fehler oder ein Ladesymbol, das nie verschwindet, zwingt jemanden dazu, Alarm zu schlagen; eine Verlangsamung zehrt still und leise an der Nutzerzahl und kostet nach und nach Kunden, während der Dienst technisch gesehen noch läuft. Der Umsatzverlust wird erst lange nach der Ursache sichtbar. Nutzer geben eine Anwendung auf, bei der die Anmeldung länger als fünf Sekunden dauert, und wechseln zu einer Alternative.

Kann eine Verlangsamung echtes Geld kosten, wenn eigentlich gar nichts ausfällt?

Ja. Ein kombinierter Vorfall, der YouTube und Azure betraf, kostete mehr als 70 Millionen US-Dollar, und diese Systeme waren nicht ausgefallen, sondern nur langsam. Das macht aus der Leistung kein technisches Detail mehr, sondern ein geschäftliches Risiko. Der Vergleich, den Nutzer anstellen, stammt aus mobilen Apps: Tippen, Ergebnis erscheint. Ein Geschäftssystem, das hinter dieser Erwartung zurückbleibt, wirkt wie defekt, auch wenn es funktioniert.

Sollte ein Testmonitor oder ein Mensch entscheiden, ob eine Warnmeldung ein echtes Problem ist?

Beides, mit einer klaren Aufgabenteilung. Die Automatisierung sammelt die Belege, sobald ein Schwellenwert überschritten wird: betroffene Datenbanken, Abfragen, API-Endpunkte, die Netzwerkschicht – und eröffnet ein Ticket in Jira oder JSM mit den angehängten Daten. Eine Person führt dann eine Validierung durch, um zu überprüfen, ob der Alarm ein echtes Problem oder nur eine einmalige Anomalie widerspiegelt, denn eine Behebung erfordert die Einbindung von Entwicklern, Testern und Infrastrukturmitarbeitern.

Erfordert der Performanztest eine Testumgebung, die identisch mit der Produktion ist?

Nein. Passe die Testumgebung so gut wie möglich an die Produktionsumgebung an, soweit es deine Ressourcen zulassen, und skaliere dann proportional: Wenn du dir nur die Hälfte der Ressourcen leisten kannst, führe die Hälfte der Last aus. Das Verhältnis sorgt dafür, dass der Test aussagekräftig bleibt. Präzision ist wichtiger als Umfang. Ein gezielter Test, der die Last auf die spezifische fehlerhafte Abfrage oder den Endpunkt lenkt, ist besser als ein generischer Lasttest, bei dem man hofft, das Problem durch Brute-Force-Methoden auszulösen.

Kann KI die Grundursachenanalyse bei Leistungsproblemen übernehmen?

Nicht ganz. Die Bits-KI von Datadog wertet die Überwachungsdetails aus – zum Beispiel, wie oft jeder Endpunkt aufgerufen wurde und welche Vorgänge ausgeführt wurden – und deckt so auf, wo das Problem liegt; eine Analyse, die manuell Stunden dauern würde. Außerdem erstellt sie Beispielabfragen und schlägt im Ticket Code-Korrekturen vor. Der Kontext bleibt menschlich: Das Tool kann nicht wissen, ob ein Spitzenwert abnormal oder selbst verursacht war.

Was verursacht die meisten Leistungsprobleme in Produktionssystemen?

Drei Ursachen tauchen immer wieder auf. Nicht optimierte Datenbankabfragen sind laut Rao Dhaligadoos Praxiserfahrung am häufigsten, da das Datenvolumen, das Anwendungen verarbeiten, ständig wächst. An zweiter Stelle stehen Skalierung und Infrastruktur: Wie das System aufgebaut und vernetzt ist, bestimmt, wie es unter Last standhält. An dritter Stelle steht der Lastausgleich, also die Frage, ob der Load Balancer den Datenverkehr auch bei steigender Last noch korrekt verteilt.

Wie viel Zeit spart proaktives Alerting im Vergleich zum Warten auf Berichte?

Arbeiten, die früher einen Monat oder zwei Wochen dauerten, passen nun in etwa in einen Sprint. Der reaktive Ansatz kostete bei jedem Schritt Zeit: ein Anruf beim Kunden, zehn oder fünfzehn Minuten, um den Bereitschaftstechniker zu erreichen, eine halbe bis eine Stunde Analyse, dann das Festhalten aller Informationen in einem Ticket oder einer E-Mail – und dabei immer die Gefahr von Fehlhandlungen. KI-generierte JMeter-Skripte verkürzen die Durchlaufzeit noch weiter.

Was kostet die reaktive Bearbeitung von Vorfällen die Leute, die sich darum kümmern?

Mehr, als jede Ausfallmeldung vermeldet. Während eines Ausfalls bei einer Bank blieb das Team 45 Stunden am Stück im Büro, und es dauerte weitere zehn bis fünfzehn Stunden, bis der Betrieb wieder lief. Ein gestrichener Urlaub, verpasste Zeit mit der Familie, eine verpasste Schulaufführung. Proaktives Monitoring zielt ebenso darauf ab, diesen Stress zu beseitigen wie den Umsatz zu schützen.

Diese Seite teilen

Ähnliche Beiträge