Definition
Ein Systemausfallmodus, der entsteht, wenn endliche Ressourcen, die für den Betrieb benötigt werden (Speicher, Dateideskriptoren, Threads, Speicherplatz, CPU-Zyklen, Netzwerkbandbreite, Energie usw.), aufgebraucht oder nicht verfügbar werden, wodurch der normale Betrieb verhindert oder verschlechtert, blockiert oder abgestürzt wird.
Prinzip
Prinzip
Systeme allozieren begrenzte Ressourcen; korrekter Betrieb hängt von ausgewogener Allokation, Rückgewinnung und Drosselung ab. Ohne Begrenzungen verwandeln Lecks, ungebundenes Wachstum, Konkurrenz oder Fehlkonfiguration endliche Kapazität in eine Fehlerquelle.
Demonstration
Demonstration
Konkretes Beispiel: Ein lang laufender Dienst mit Speicherleck verbraucht allmählich den Heap, bis das OS den Prozess wegen OOM beendet; ein Server, der pro Anfrage Sockets öffnet, überschreitet das Limit an Dateideskriptoren und lehnt neue Verbindungen ab; ein Container erreicht CPU- oder Speicherkontingente und wird gedrosselt oder vom Orchestrator verworfen.
Fehlanwendung
Fehlanwendung
Ressourcenerschöpfung als bloßes 'zu langsam' zu interpretieren oder davon auszugehen, dass ein Neustart immer die Lösung ist. Ein weiterer Fehler ist, nur eine Ressource zu betrachten (z. B. Speicher) und korrelierte Limits (Dateihandler, ephemeral Ports) zu ignorieren, die tatsächlich den Ausfall verursachen.
Konsequenz
Konsequenz
Richtig diagnostiziert führt Ressourcenerschöpfung zu Maßnahmen wie Leckbehebung, Backpressure, Pooling, Kontingenten und kontrollierter Degradierung; unbehandelt verursacht sie intermittierende Ausfälle, Denial-of-Service-Zustände, verringerte Zuverlässigkeit und kann sich verstärken (z. B. durch wiederholte Versuche).
Umkehrung
Umkehrung
Umkehren durch entwerfen für Schonung und Begrenzung: Kontingente, Circuit-Breaker, Admission-Control, Verbindungs-Pools und explizite Ressourcenausschöpfung einsetzen, sodass Systeme kontrolliert ausfallen oder Last ablehnen, statt Kapazität zu erschöpfen.
Abgrenzung
Abgrenzung
Bezieht sich auf endliche, adressierbare rechnerische und infrastrukturelle Ressourcen; schließt permanente Hardwarefehler aus (obwohl diese ähnlich erscheinen können) sowie absichtliches Throttling als Policy. Der Fokus liegt auf Kapazitätserschöpfung, nicht auf algorithmischer Ineffizienz, die den Durchsatz mindert ohne absolute Grenzwerte zu erreichen.
Semantische Spannung
Semantische Spannung
Wird oft mit Starvation (CPU-Mangel durch Scheduling), Lecks (schrittweise nicht zurückgegebene Allokationen) und Overload (plötzlicher Anstieg) verwechselt. Die Spannung besteht darin, ob die Ursache endliche Kapazitätsgrenzen, Scheduling-Ungerechtigkeit oder Softwarefehler mit ungebundener Nachfrage sind.
Synthese
Synthese
Ressourcenerschöpfung bezeichnet Ausfälle, die auftreten, wenn die endlichen Mittel eines Systems schneller verbraucht werden als sie zurückgewonnen oder ersetzt werden können; Abhilfe erfordert Messung, Begrenzung, Rückgewinnung und architektonische Kontrollen, damit lokale Erschöpfung nicht zu systemischen Fehlern führt.