Leistungsbericht
Während der Implementierung der Wiederholungslogik für Azure Postgres PaaS wurde folgendes Test-Setup durchgeführt und Folgendes beobachtet.
Test-Umgebungsparameter (lokaler Computer):
Prozessor: Intel(R) Core (TM) i7-7820HQ CPU 2,90 GHz
RAM: 32 GB
Betriebssystem: Windows 10
Datenbank: PostgreSQL
Implementierung
Eine persistente und protokollierte Eigenschaft wurde alle 5 Sekunden aktualisiert, während die Datenbank 5 Minuten heruntergefahren war.
Werte der konfigurierbaren Parameter:
acquireRetryAttempts: 350
acquireRetryDelay: 1000
DatabaseWriteRetryAttempts: 10
Leistungsmetriken
Vor dem Herunterfahren der Datenbank:
1. Plattform-Subsystem
2. Untersystem für Wert-Stream-Verarbeitung
Wenn die Datenbank 4 Minuten heruntergefahren war.
1. Plattform-Subsystem
2. Untersystem für Wert-Stream-Verarbeitung
Nachdem die Datenbank wieder verfügbar ist:
1. Plattform-Subsystem
2. Untersystem für Wert-Stream-Verarbeitung
Schlussfolgerung
Wenn die Datenbank nicht verfügbar ist, werden erfasste Daten in der Warteschlange valuestream akkumuliert. Dies kann anhand der obigen Metriken beobachtet werden, wenn:
1. die Anzahl der derzeit in der Warteschlange befindlichen Einträge steigt
2. die Anzahl der in der Warteschlange befindlichen Stream-Einträge größer als die Anzahl der ausgeführten Stream-Einträge ist
Nachdem die Datenbank wieder verfügbar ist, wird die Warteschlange geleert, und die Einträge in der Warteschlange werden verarbeitet oder persistent gemacht. Dies kann anhand der Leistungsmetriken bestätigt werden, wenn:
1. die Anzahl der derzeit in der Warteschlange befindlichen Einträge 0 ist
2. sich die Anzahl der ausgeführten Stream-Einträge erhöht
* 
Diese Beobachtungen sind für dieses exakte Test-Setup spezifisch. Kunden werden ein anderes Verhalten oder andere Ergebnisse für Ihre spezifische Last usw. beobachten.
War dies hilfreich?