Ressource: Waiter
Une ressource "service de veille" attend qu'une condition de fin soit remplie dans une ressource RuntimeConfig avant de renvoyer une valeur. Par exemple, supposons que vous disposiez d'un système distribué dans lequel chaque nœud écrit dans une ressource Variable indiquant l'état de préparation du nœud dans le cadre du processus de démarrage.
Vous configurez ensuite une ressource "service de veille" avec la condition de réussite définie pour attendre qu'un certain nombre de nœuds se soient connectés. Ensuite, votre application exécute du code arbitraire une fois la condition remplie et que le délai d'attente a expiré.
Une fois créée, une ressource Waiter est immuable.
Pour en savoir plus sur l'utilisation des waiters, consultez la documentation Créer un waiter.
Représentation JSON | |
---|---|
{ "name": string, "timeout": string, "failure": { object( |
Champs | |
---|---|
name |
Nom de la ressource Waiter, au format suivant:
Une fois la ressource Waiter créée, vous ne pouvez plus modifier son nom. |
timeout |
[Obligatoire] Spécifie le délai d'inactivité du veilleur en secondes, à partir du moment où la méthode Durée en secondes avec neuf chiffres au maximum après la virgule. Se termine par " |
failure |
[Facultatif] Condition d'échec de ce service de veille. Si cette condition est remplie, |
success |
[Obligatoire] Condition de réussite. Si cette condition est remplie, |
createTime |
Uniquement en sortie. Instant auquel cette ressource Waiter a été créée. Ajouter la valeur de Horodatage au format RFC3339 UTC "Zulu", précis à la nanoseconde près. Exemple : |
done |
Uniquement en sortie. Si la valeur est Si la valeur est "true", le service de veille est terminé. Si le service de veille s'est terminé en raison d'un délai avant expiration ou d'un échec, |
error |
Uniquement en sortie. Si le service de veille s'est terminé en raison d'un échec ou d'un délai avant expiration, cette valeur sera définie. |
EndCondition
Condition qu'une ressource "service de veille" attend.
Représentation JSON | |
---|---|
{
"cardinality": {
object( |
Champs | |
---|---|
cardinality |
Cardinalité de |
Cardinalité
Condition de cardinalité pour la ressource Waiter. Une condition de cardinalité est remplie lorsque le nombre de variables sous un préfixe de chemin d'accès spécifié atteint un nombre prédéfini. Par exemple, si vous définissez une condition de cardinalité où path
est défini sur /foo
et que le nombre de chemins est défini sur 2
, les variables suivantes rempliront la condition dans une ressource RuntimeConfig:
/foo/variable1 = "value1"
/foo/variable2 = "value2"
/bar/variable3 = "value3"
Toutefois, il ne répondrait pas à la même condition si number
était défini sur 3
, car il n'existe que deux chemins commençant par /foo
. Les conditions de cardinalité sont récursives. Toutes les sous-arborescences sous le préfixe de chemin spécifique sont comptabilisées.
Représentation JSON | |
---|---|
{ "path": string, "number": number } |
Champs | |
---|---|
path |
Racine du sous-arbre de variables à surveiller. Par exemple, |
number |
Nombre de variables sous |
Méthodes |
|
---|---|
|
Crée une ressource Waiter. |
|
Supprime le délai d'attente avec le nom spécifié. |
|
Obtient des informations sur un seul serveur. |
|
Répertoriez les serveurs dans la configuration donnée. |
|
Renvoie les autorisations qu'un appelant a sur la ressource spécifiée. |