Freigeben über


Implementieren von Wiederholungen mit exponentiellem Backoff

Tipp

Dieser Inhalt ist ein Auszug aus dem eBook .NET Microservices Architecture for Containerized .NET Applications, verfügbar auf .NET Docs oder als kostenlose herunterladbare PDF, die offline gelesen werden kann.

.NET Microservices-Architektur für containerisierte .NET-Anwendungen eBook-Cover-Thumbnail.

Wiederholungen mit exponentiellem Backoff sind eine Technik, mit der ein Vorgang wiederholt wird, wobei eine exponentielle Wartezeit bis zu einer maximalen Wiederholungsanzahl erreicht wurde (der exponentielle Backoff). Diese Technik berücksichtigt die Tatsache, dass Cloudressourcen aus irgendeinem Grund zeitweise für mehr als ein paar Sekunden nicht verfügbar sein könnten. Beispielsweise kann ein Orchestrator einen Container in einen anderen Knoten in einem Cluster verschieben, um den Lastenausgleich zu ermöglichen. Während dieser Zeit können eventuell einige Anfragen fehlschlagen. Ein weiteres Beispiel könnte eine Datenbank wie SQL Azure sein, bei der eine Datenbank zum Lastenausgleich auf einen anderen Server verschoben werden kann, was dazu führt, dass die Datenbank einige Sekunden lang nicht verfügbar ist.

Es gibt viele Ansätze zum Implementieren von Wiederholungslogik mit exponentiellem Backoff.