Ressource: Waiter
Eine Waiter-Ressource wartet drauf, dass eine Endbedingung innerhalb einer RuntimeConfig-Ressource erfüllt ist, und gibt dann etwas zurück. Angenommen, Sie haben ein verteiltes System, in dem jeder Knoten in eine Variable schreibt, die die Bereitschaft des Knotens im Rahmen des Startvorgangs angibt.
Sie konfigurieren dann eine Waiter-Ressource mit der Erfolgsbedingung, zu warten, bis eine gewisse Anzahl an Knoten erreicht ist. Danach führt ihre Anwendung einen beliebigen Code aus, nachdem die Bedingung erfüllt wurde und die Rückgabe des Waiters erfolgt ist.
Nachdem eine Waiter-Ressource erstellt wurde, lässt sie sich nicht mehr ändern.
Mehr Informationen über die Verwendung von Waitern erfahren Sie in der Dokumentation Einen Waiter erstellen.
JSON-Darstellung | |
---|---|
{ "name": string, "timeout": string, "failure": { object( |
Felder | |
---|---|
name |
Der Name der Waiter-Ressource im Format:
Die Nachdem Sie eine Waiter-Ressource erstellt haben, können Sie den Namen der Ressource nicht mehr ändern. |
timeout |
[Erforderlich] Gibt das Zeitlimit des Waiter in Sekunden an, beginnend mit dem Zeitpunkt, an dem die Dauer in Sekunden mit bis zu neun Nachkommastellen und einem ' |
failure |
[Optional] Die Bedingung für das Fehlschlagen des Waiters. Wenn diese Bedingung erfüllt ist, wird |
success |
[Benötigt] Die Erfolgsbedingung. Wenn diese Bedingung erfüllt ist, wird |
createTime |
Nur Ausgabe. Der Zeitpunkt, zu dem diese Waiter-Ressource erstellt wurde. Wenn Sie diesem Moment den Wert von Ein Zeitstempel im Format "RFC3339 UTC 'Zulu'" in Nanosekunden. Beispiel: |
done |
Nur Ausgabe. Wenn der Wert "true" bedeutet, dass der Waiter abgeschlossen ist. Wenn der Waiter aufgrund eines Zeitlimits oder eines Fehlers beendet wurde, wird |
error |
Nur Ausgabe. Wenn der Waiter aufgrund eines Fehlers oder eines Zeitlimits beendet wurde, wird dieser Wert festgelegt. |
Endbedingung
Die Bedingung, auf die eine Waiter-Ressource wartet.
JSON-Darstellung | |
---|---|
{
"cardinality": {
object( |
Felder | |
---|---|
cardinality |
Die Kardinalität der |
Kardinalität
Eine Kardinalitätsbedingung für die Waiter-Ressource. Eine Kardinalitätsbedingung ist erfüllt, wenn eine Anzahl an Variablen unter einem bestimmten Pfadpräfix eine vordefinierte Zahl erreicht. Wenn Sie beispielsweise eine Kardinalitätsbedingung festlegen, bei der path
auf /foo
und die Anzahl der Pfade auf 2
festgelegt ist, erfüllen die folgenden Variablen in einer RuntimeConfig-Ressource die Bedingung:
/foo/variable1 = "value1"
/foo/variable2 = "value2"
/bar/variable3 = "value3"
Mit number
= 3
würde die Bedingung jedoch nicht erfüllt, da es nur zwei Pfade gibt, die mit /foo
beginnen. Kardinalitätsbedingungen sind rekursiv, alle Teilbäume unter dem angegebenen Pfadpräfix werden einbezogen.
JSON-Darstellung | |
---|---|
{ "path": string, "number": number } |
Felder | |
---|---|
path |
Das Stammverzeichnis des Teilbaums der Variable, das überwacht werden soll. Beispiel: |
number |
Die Anzahl der Variablen unter |
Methoden |
|
---|---|
|
Erstellt eine Waiter-Ressource. |
|
Löscht den Waiter mit dem angegebenen Namen. |
|
Ruft Informationen über einen einzelnen Waiter ab. |
|
Listet Waiter in der angegebenen Konfiguration auf. |
|
Gibt die Berechtigungen des Aufrufers für die angegebene Ressource zurück. |